需求:找出一个数组中相同的元素,并剔除重复的元素(数组序号后的),例如:输入【11,2,4,2,10,11】,输出:【11,2,4,10】
public class Demo55 {
public static int[] getNonRepetitiveEle(int[] arr) {
int count = 0;
for (int i =0;i<arr.length;i++) {
for (int j =i+1;j<arr.length;j++) {
if (arr[i] == arr[j]) {
count++;
break;
}
}
}
//确定新数组的长度
int newLength =arr.length-count;
int index = 0; //定义一个变量来记录新数组使用的索引值
//创建一个新的数组
int[] newArr = new int[newLength];
//往新数组里面添加旧数组的元素,要判断该元素是否存在新数组中,如果存在该元素就不要了
for (int i =0; i<arr.length;i++) {
int temp = arr[i];
int flag=0;
for (int j=0;j<newLength;j++) {
if(newArr[j] == temp) {
flag =1;
break;
}
}
if(flag==0){
newArr[index++] = temp;
}
}
return newArr;
}
public static void main(String[] args) {
int[] arr = {11,2,4,2,10,11};
System.out.println("旧数组"+Arrays.toString(arr));
int[] newArr = getNonRepetitiveEle(arr);
System.out.println("新数组"+Arrays.toString(newArr));
}
}