关于#java#的问题,请各位专家解答!(开发工具-eclipse)

img


这个问题已经困恼了我一天了,怎么才能数组中去质数,你们说的答案有些我还没学,能不能从下面这个去重的基础上改
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;
}