Java程序从整数列表中打印重复项

为了找到重复项,我们可以利用Java中Set的属性,即在Java中不允许将重复项添加到Set中的情况。set的Add方法为之前未添加的添加值返回true。如果添加值已经存在于Set中,则返回false。

对于我们的议程,我们将遍历整数的列表或集合,并尝试将每个整数添加到整数类型的集合中。如果现在添加整数,则这意味着它是第一次发生,并且如果整数是不会被添加,因为Set add方法返回false意味着它再次发生并且在给定列表或集合中重复。因此对于这些重复的整数类型,我们会将其添加到其他set中,这将是我们得到的重复整数。

示例

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
public class DuplicateIntegers {
   public static void main(String[] args) {
      ArrayList<Integer> arr = new ArrayList<>(Arrays.asList(1,2,3,4,45,55,3,32,22,22,55,1));
      HashSet<Integer> hCheckSet = new HashSet<>();
      HashSet<Integer> hTargetSet = new HashSet<>();
      for (Integer integer : arr) {
         if(!hCheckSet.add(integer)) {
            hTargetSet.add(integer);
         }
      }
      System.out.println("Duplicate integers in given list is/are " + hTargetSet);
   }
}

输出结果

使用以下文本创建的myCSV.csv文件

Duplicate integers in given list is/are [1, 3, 55, 22]