List、Set、Map判断两个对象相等
-
List
通过equals()方法比较返回true即可。 -
HashSet
先比较两个对象hashCode()方法返回的值是否相等,如果不相等就认为两个对象是不相等的,如果两个对象的hashCode相等就继续调用equals()方法进一步判断两个对象是否相等,如果equals()方法返回true认为两个对象相等,返回false认为两个对象不相等。 -
TreeSet
两个对象通过compareTo(Object obj)方法比较是否返回0:如果返回0,则认为相等,否则不相等。 -
HashMap在java的集合中,判断两个对象是否相等的规则是:使用hashCode() 和equa()方法
-
1,判断两个对象的hashCode是否相等 如果不相等,认为两个对象也不相等,结束 如果相等,则进行第2步判断 2,用equals运算判断两个对象是否相等
如果不相等,认为两个对象也不相等
如果相等,认为两个对象相等
5.HashTable
key:两个key通过equals()方法比较返回true,两个key的hashCode值也相等;
value:value与另外一个对象通过equals()方法比较返回true即可。
6.TreeMap
两个key值通过compareTo()方法返回0,TreeMap即认为这两个key是相等的。