在List中查找重复元素

在这篇文章中,我们将演示如何在列表中查找重复元素。 以下是一些例子。

示例#1

我们将使用Set集合来识别副本,因为Set是不同元素的无序列表。 如果Set的add()方法返回false,则表示列表中已存在一个元素。

文件:DuplicateInArrayExample1.java

import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set;  public class DuplicateInArrayExample1 {     public static void main(String[] args) {         List<String> elements=new ArrayList<>();         elements.add("One");         elements.add("Three");         elements.add("Two");         elements.add("Three"); /*Duplicate Element*/         elements.add("Four");         elements.add("Five");         elements.add("Four");     /*Duplicate Element*/          System.out.println("Elements : "+elements);          Set<String> set=new HashSet<>();         Set<String> duplicateElements=new HashSet<>();          for (String element : elements) {             if(!set.add(element)){                 duplicateElements.add(element);             }         }          System.out.println("Duplicate Elements : "+duplicateElements);     } } 

执行上面示例代码,得到以下结果 –

Elements : [One Three Two Three Four Five Four] Duplicate Elements : [Four Three] 

示例#2

在这个方法中,我们将首先使用Collections.sort()方法对列表元素进行排序,然后在单个循环中比较相邻元素。参考以下示例代码 –

import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set;  public class DuplicateInArrayExample2 {     public static void main(String[] args) {         List<String> elements=new ArrayList<>();         elements.add("One");         elements.add("Three");         elements.add("Two");         elements.add("Three"); /*Duplicate Element*/         elements.add("Four");         elements.add("Five");         elements.add("Four");     /*Duplicate Element*/          System.out.println("Elements : "+elements);          Set<String> duplicateElements=new HashSet<>();          Collections.sort(elements);         for (int i = 1; i < elements.size(); i++) {             if(elements.get(i-1).equals(elements.get(i))){                 duplicateElements.add(elements.get(i));             }         }         System.out.println("Duplicate Elements : "+duplicateElements);     } } 

执行上面示例代码,得到以下结果 –

Elements : [One Three Two Three Four Five Four] Duplicate Elements : [Four Three] 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/264156.html

(0)
上一篇 2022年6月7日
下一篇 2022年6月7日

相关推荐

发表回复

登录后才能评论