hashCode()与equals()

轩辕小不懂 发布于 2021-04-25 14:46
阅读 29
收藏 0
分类:Java开发

最佳答案 2021-04-25 15:09

675
Pack
Pack

1、如果两个对象相等,则hashcode一定也是相同的

2、两个对象相等,对两个equals方法返回true

3、两个对象有相同的hashcode值,它们也不一定是相等的(哈希冲突)

4、综上,equals方法被覆盖过,则hashCode方法也必须被覆盖

5、hashCode()的默认行为是对堆上的对象产生独特值。如果没有重写hashCode(),则该class的两个对象无论如何都不会相等(即使这两个对象指向相同的数据)。

请先 登录 后评论