java编程:定义一个有重复数字的数组,将数组中的重复数字删除,得到一个没有重复数字的数组

定义一个有重复数字的数组,将数组中的重复数字删除,得到一个没有重复数字的数组

完整代码如下:

public class ArraysDemo {
     
	public static void main(String[] args) {
     
		int count = 0;
		int[] a = {
      12, 20, 5, 16, 15, 20, 20, 45, 23, 1 };
		for (int i = 0; i < a.length - 1; i++) {
     
			for (int j = i + 1; j < a.length; j++) {
     
				if (a[i] == a[j]) {
     
					count++;              //遍历数组,得到重复数字的个数
					break;
				}
			}
		}
		int[] b = new int[a.length - count];     //定义一个新数组,长度为旧数组长度—重复数字的个数
		int num = 0;
		for (int i = 0; i < a.length; i++) {
     
			int flag = 0;
			for (int j = i - 1; j >= 0; j--) {
     
				if (a[i] == a[j]) {
     
					flag = 1;             //遍历旧数组,将重复数字标记
				}
			}
			if (flag == 0) {
     
				b[num] = a[i];            //没被标记的数字就放入新数组中
				num++;
			}
		}
		for (int n : b) {
                      //遍历新数组,得到结果
			System.out.print(n + " ");
		}
	}
}

你可能感兴趣的:(java)