定义一个函数清除该数组的重复元素

定义一个函数清除该数组的重复元素

1.目前有数组” int[] arr =  {11,2, 4, 2, 10, 11},定义一个函数清除该数组的重复元素,返回的数组不准浪费长度。 思想: 1.先利用冒泡排序思想找到数组arr中重复元素个数n,可以得到新数组newarr的长度arr.length - n; 2.把数组arr中不重复的元素放入新数组newarr中(这个正常人都能想到); 3.那么如何将不重复的元素放入新数组newarr中?利用if来判断,方法如下: 4.两个循环遍历,将数组arr中的每一个元素,依次放入新数组newarr中,加个过滤器(if判断:是否,放入新数组newarr中的元素与之前放入的元素重复, 重复,高举旗帜,break结束循环) 5.代码如下: public class Demo {      public static void main(String[] args){           System.out.PRintln("王者归来!");           int[] arr =  {11,2,4,2,10,11};           System.out.println("该数组重复的数有:"+clear(arr)+"个");      }      public static int clear(int[] a){           int n=0;           for(int i=0;i<a.length-1;i++){               for(int j=i+1;j<a.length;j++){                    if(a[i]==a[j]){                         n++;                    }               }           }           int[] newarr = new int[a.length-n];           int index=0;           for(int i=0;i<a.length;i++){               boolean flag = false;               for(int j=0;j<newarr.length;j++){                    //过滤:把原数组的每一个元素与放入新数组的元素进行比较                    if(a[i]==newarr[j]){                         flag = true;                         break;                    }               }               //第一遍:就没有相等的               if(flag == false){                    //index先用再加,卧槽!                    newarr[index++]=a[i];               }           }           for(int i=0;i<newarr.length;i++){               System.out.print(" "+newarr[i]);           }           return n;      } }