java – 从两个列表中删除重复的公共输出

我有两个数组.我希望输出是两个列表之间的公共数字,但是下面的代码输出重复的公共数字.

double[] arr1 = {100.00,100.00,17246.40,2568.00,0.20,9845.00,5768.18,30.00,63.68,83.56,444.39,144.20,2889.00};

 double[] arr2 = {2000.90,508.07,5899.38,2889.00,3000.00,60.00,3135.00,28329.91,9845.00};

 for(int i=0; i<arr1.length; i++){
      for(int j=0; j<arr2.length; j++){
           if(arr1[i] == arr2[j]){
                System.out.println(arr1[i]);

任何人都可以帮助只输出两个阵列之间的公共号码并删除重复的数字?

谢谢.

解决方法

创建一个集合,只需添加常用值即可.

double[] arr1 = {100.00,2889.00};


double[] arr2 = {2000.90,9845.00};

Set<Double> set = new HashSet<Double>();

for(int i=0;i<arr1.length;i++){

     for(int j=0;j<arr2.length;j++){
           if(arr1[i]==arr2[j])
                set.add(arr1[i]);
     }
}

System.out.println(Arrays.toString(set.toArray()));

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...