List、Set、Map判断两个对象相等

    1. List 
      通过equals()方法比较返回true即可。

    2. HashSet 
      先比较两个对象hashCode()方法返回的值是否相等,如果不相等就认为两个对象是不相等的,如果两个对象的hashCode相等就继续调用equals()方法进一步判断两个对象是否相等,如果equals()方法返回true认为两个对象相等,返回false认为两个对象不相等。

    3. TreeSet 
      两个对象通过compareTo(Object obj)方法比较是否返回0:如果返回0,则认为相等,否则不相等。

    4. 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是相等的。

posted on 2019-03-02 14:28  温故而知新,少年  阅读(433)  评论(0编辑  收藏  举报

导航