0
如何从一个集中删除所有对象,这些对象也存在于另一个集中。为的exaple:从java集中删除对象
SET 1 = { a,b,c,d,e,f) |
|---> NEW SET 1= (a,b,d,e}
SET 2 = {c,f) |
如何从一个集中删除所有对象,这些对象也存在于另一个集中。为的exaple:从java集中删除对象
SET 1 = { a,b,c,d,e,f) |
|---> NEW SET 1= (a,b,d,e}
SET 2 = {c,f) |
我不知道是什么问题,从org.apache.commons.collections.CollectionUtils
set1.removeAll(set2);
代码
public static Collection subtract(final Collection a, final Collection b) {
ArrayList list = new ArrayList(a);
for (Iterator it = b.iterator(); it.hasNext();) {
list.remove(it.next());
}
return list;
}
注意,一个则要保证包含在集合中的对象的'equals'和'hashCode'实现的行为就像它们应该那样,或者它不会做你想要的。 – Romain
100%同意。非常简单:) – chzbrgla