【发布时间】:2012-12-08 13:16:16
【问题描述】:
我有多个Integer ArrayList,其中包含一些重复的元素。我想从他们那里得到独特的元素。但是如何呢?java.util.ArrayList.removeAll() 并不能完全满足我的目的。请参阅下面的测试代码-
ArrayList<Integer> d = new ArrayList<Integer>();
d.add(2);
d.add(4);
d.add(5);
d.add(7);
d.add(8);
d.add(9);
ArrayList<Integer> e = new ArrayList<Integer>();
e.add(3);
e.add(7);
d.removeAll(e);
for (int t : d) {
System.out.print(t+", ");
}
在输出中,我得到 2, 4, 5, 8, 9, 。显然3 不见了。同样为了简单起见,我在这里只使用了两个ArrayList,但在我的代码中,我有两个以上的ArrayList。
如何在 Java 中的多个 ArrayList 中找到唯一元素
【问题讨论】:
-
根据您的代码,您得到的输出是显而易见的。我的理解是
7很常见,应该只删除 7 个并添加 3 个......对吗?然后使用Set。它不会添加重复项...这样您将拥有所有唯一列表...