从Java中的ArrayList中删除重复项
可以使用HashSet从ArrayList中删除重复项,因为HashSet中不允许重复项。因此,ArrayList将转换为HashSet并删除重复项。然后将HashSet转换回ArrayList。
演示此程序如下
示例
import java.util.ArrayList; import java.util.HashSet; import java.util.List; public class Demo { public static void main(String[] args) { List<String> aList1 = new ArrayList<String>(); aList1.add("Adam"); aList1.add("John"); aList1.add("Mary"); aList1.add("Adam"); aList1.add("Mary"); System.out.println("ArrayList项是:" ); for (String i : aList1) System.out.println(i); HashSet h = new HashSet(aList1); List aList2 = new ArrayList(h); System.out.println("\nThe ArrayList items after removing duplicates are:" ); for (String i : aList2) System.out.println(i); } }
输出结果
上面程序的输出如下
ArrayList项是: Adam John Mary Adam Mary The ArrayList items after removing duplicates are: Adam John Mary
现在让我们了解上面的程序。
创建ArrayListaList1。然后,使用ArrayList.add()将元素添加到此ArrayList中。然后显示ArrayList元素。演示这的代码片段如下
List<String> aList1 = new ArrayList<String>(); aList1.add("Adam"); aList1.add("John"); aList1.add("Mary"); aList1.add("Adam"); aList1.add("Mary"); System.out.println("ArrayList项是:" ); for (String i : aList1) System.out.println(i);
之后,将ArrayList转换为HashSet并删除重复项。然后将HashSet转换回ArrayList,即aList2。然后显示没有重复的ArrayList元素。演示这的代码片段如下
HashSet h = new HashSet(aList1); List aList2 = new ArrayList(h); System.out.println("\nThe ArrayList items after removing duplicates are:" ); for (String i : aList2) System.out.println(i);