如何从ArrayList中删除重复数据

在本节中,我们将演示如何从ArrayList中删除重复的元素。

  • 在Java中,List是元素的顺序序列,Set是不同的元素列表序列。
  • 通过将Arraylist转换为HashSet或LinkedHashSet,可以从列表中删除重复的元素。

以下是一些例子 –

文件:RemoveDuplicateFromList1.java

package com.tutorial;  import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set;  public class RemoveDuplicateFromList1 {     public static void main(String[] args) {         List<String> list=new ArrayList<>();         list.add("One");         list.add("Two");         list.add("Three");         list.add("Three"); /* Duplicate Entry*/         list.add("Four");         list.add("Five");         list.add("Six");         list.add("Six"); /* Duplicate Entry*/          System.out.println("Before : "+list);         Set<String> set=new HashSet<>();          for (String string : list) {             set.add(string);         }         System.out.println("After : "+set);     } } 

在这个例子中,我们使用for-each循环和HashSet的add方法来删除重复的元素。

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

Before : [One Two Three Three Four Five Six Six] After : [Five Six One Four Two Three] 

文件:RemoveDuplicateFromList2.java

package com.yiibai.tutorial;  import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set;  public class RemoveDuplicateFromList2 {     public static void main(String[] args) {         List<String> list=new ArrayList<>();         list.add("One");         list.add("Two");         list.add("Three");         list.add("Three"); /* Duplicate Entry*/         list.add("Four");         list.add("Five");         list.add("Six");         list.add("Six"); /* Duplicate Entry*/          System.out.println("Before : "+list);         Set<String> set=new HashSet<>(list);         System.out.println("After: "+set);     } } 

在这个例子中,使用HashSet的构造函数来删除重复的元素。执行上面示例代码,得到以下结果 –

Before : [One Two Three Three Four Five Six Six] After : [Five Six One Four Two Three] 

文件:RemoveDuplicateFromList3.java

package com.yiibai.tutorial;  import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.List; import java.util.Set;  public class RemoveDuplicateFromList3 {     public static void main(String[] args) {         List<String> list=new ArrayList<>();         list.add("One");         list.add("Two");         list.add("Three");         list.add("Three"); /* Duplicate Entry*/         list.add("Four");         list.add("Five");         list.add("Six");         list.add("Six"); /* Duplicate Entry*/          System.out.println("Before : "+list);         Set<String> set=new LinkedHashSet<>(list);         System.out.println("After : "+set);     } } 

在这个例子中,使用LinkedHashSet的构造函数来删除重复的元素。LinkedHashSet保持元素的顺序与列表相同。

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

Before : [One Two Three Three Four Five Six Six] After : [One Two Three Four Five Six] 

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

(0)
上一篇 2022年6月7日 00:28
下一篇 2022年6月7日 00:37

相关推荐

发表回复

登录后才能评论