本帖最后由 Captainor 于 2019-3-11 19:07 编辑
数组去重的三种方法【1、2方法 不适合数组中本身含有0的,第二种带排序,一三原序】
【第一种】
public static void main(String[] args) {
int [] arr={1,1,3,3};
int [] temp=new int[arr.length];
int index=0;
for (int i=0;i<arr.length;i++)
{
boolean b=pp(temp,arr);
if(!b)
{
temp[index]=arr;
index++;
System.out.print(arr+" ");
}
}
}
public static boolean pp(int[] arr,int num) {
for(int i=0;i<arr.length;i++)
{
if(arr==num)
{
return true;
}
}
return false;
}
【第二种】
public static void main(String[] args) {
int []arr=new int[]{1,5,2,6,5,6};
int []temp=new int[arr.length];
int []temp1=new int[arr.length];
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
int count =0;
for (int i=0;i<arr.length;i++)
{
if (arr != temp[0]) {
temp[0] = arr;
temp1[count]=arr;
System.out.print(temp[0] + " ");
count++;
}
}
System.out.println();
System.out.println(count);
for(int k=0;k<count;k++)
{
System.out.print(temp1[k] +" ");
}
}
【第三种】
public static void main(String[] args) {
int[]arr={0,1,5,6,7,5,0,0};
List<Integer> list=new ArrayList<Integer>();
for (int i=0;i<arr.length;i++)
{
if(!list.contains(arr))
{
list.add(arr);
}
}
System.out.println(list);
}
【判断100以内质数的方法】
public static void main(String[] args) {
//定义质数总和变量
int sum=0;
//质数从2开始判断到100
for(int i=2;i<=100;i++)
{
int count=0;
for(int j=1;j<=i;j++)
{
if (i%j==0)
{
count++;
}
}
//当该数除到该数完成后,判断其是否没余数的是2个除数
if(count==2)
{System.out.println(i);
sum=sum+i;}
}
System.out.println(sum);
}
|
|