104~牛牛 发表于 2018-1-5 16:12:04

equals() 与 hashCode() 方法的关系

equals() 与 hashCode() 方法的关系

icerman 发表于 2018-1-8 19:58:54

   1.hashCode是为了提高在散列结构存储中查找的效率,在线性表中没有作用。
   2.equals和hashCode需要同时覆盖。
   3.若两个对象equals返回true,则hashCode有必要也返回相同的int数。
4.若两个对象equals返回false,则hashCode不一定返回不同的int数,但为不相等的对象生成不同hashCode值可以提高
哈希表的性能。

5.若两个对象hashCode返回相同int数,则equals不一定返回true。

6.若两个对象hashCode返回不同int数,则equals一定返回false。

   7.同一对象在执行期间若已经存储在集合中,则不能修改影响hashCode值的相关信息,否则会导致内存泄露问题。
页: [1]
查看完整版本: equals() 与 hashCode() 方法的关系