Sets.difference
中哪两个对象被认为是不同的。当他们有不同的哈希码或object.equals
返回false时。
答案 0 :(得分:10)
javadoc说:
返回的集合包含
中的所有元素set1
包含但未包含在set2
因此,这意味着规则取决于两组的类型。例如,如果Set是HashSet,则将使用equals()
。如果集合是TreeSet,则将使用compareTo()
(或比较器的compare()
方法)。如果使用IdentityHashSet,则将使用该对象的标识。
hashCode()
来确定相等性,因为两个不相等的对象可能具有相同的hashCode。