今天爱分享给大家带来两个对象值相同(x.equals(y) == true),但却可有不同的 hash code,这句话对不对?【面试题详解】,希望能够帮助到大家。
【参考答案】
对。
如果对象要保存在 HashSet 或 HashMap 中,它们的 equals 相等,那么,它们的 hashcode
值就必须相等。
如果不是要保存在 HashSet 或 HashMap,则与 hashcode 没有什么关系了,这时候
hashcode 不等是可以的,例如 arrayList 存储的对象就不用实现 hashcode 方法。
原文链接:https://blog.itblood.com/2781.html,转载请注明出处。

![超能力重制版v0.55 AI版[PC+安卓/1.96G/更新]Supower – Remake [v0.55] [亚洲SLG/汉化/沙盒]](/wp-content/uploads/replace/2025/08/27/972dbfb92864bd0ded4cf98838613164.webp)