比较两个聚合中是否有相同的元素的检测方法

比较两个集合中是否有相同的元素的检测方法

如果要判断两个集合中是否有相同的元素,则可以用jdk中自带的方法:Collections.disjoint(Collection<?> c1, Collection<?> c2)

 

public static boolean disjoint(Collection<?> c1,
                               Collection<?> c2)
如果两个指定 collection 中没有相同的元素,则返回 true

如果将此方法用在不符合 Collection 常规协定的 collection 上,则必须小心。实现可以在任一 collection 上进行迭代,测试元素是否包含在另一个 collection 中(或执行任何等效的计算)。如果任一 collection 使用了一个非标准的相等性测试(比如顺序不是与 equals 一致的 SortedSet,或者 IdentityHashMap 的键集),则两个 collection 都必须使用相同的非标准相等性测试,否则此方法的结果是不确定的。

注意,允许在两个参数中传递相同的 collection,在这种情况下,当且仅当 collection 为空时此方法返回 true。

 

参数:
c1 - 一个 collection
c2 - 一个 collection
抛出:
NullPointerException - 如果任一 collection 为 null
从以下版本开始:
1.5
1 楼 fengxiaonanhai 2012-06-06  
你错误的理解了这个方法的意思,正确的理解是两个list是不是有共同的元素,如果没有共同元素返回true,否则返回false.