
这个问题已经困恼了我一天了,怎么才能数组中去质数,你们说的答案有些我还没学,能不能从下面这个去重的基础上改
public static void main(String[] args) {
int[] arr= {12,23,34,23,45,56,12}; System.out.println(Arrays.toString(test1(arr}
public static int[] test1(int[] arr) {
int[] newarr= {}; int index=0; for(int i=0;i boolean flag=true; for(int j=0; j if(newarr[j]==arr[i]) { flag=false; break; } } if(flag) { newarr=Arrays.copyOf(newarr,newarr.length+1 newarr[index]=arr[i]; index++; }}
return newarr;
}
public static void main(String[] args) {
int[] arr= {12,23,34,23,45,56,12};
System.out.println(Arrays.toString(test1(arr)));
}
public static int[] test1(int[] arr) {
int[] newarr= {};
int index=0;
for(int i=0;i<arr.length;i++) {
boolean flag=true;
for (int j = 2; j < arr[i]; j++) {
if (arr[i] % j == 0) {
flag = false;
break;
}
}
/*for(int j=0; j<newarr.length; j++) {
if(newarr[j]==arr[i]) {
flag=false;
break;
}
}*/
if(flag==false) {//改过的地方
newarr=Arrays.copyOf(newarr,newarr.length+1);
newarr[index]=arr[i];
index++;
}
}
return newarr;
}