飞网论坛

标题: 130、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? [打印本页]

作者: johnny    时间: 2016-9-4 11:59
标题: 130、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
130、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
      对。
     如果对象要保存在HashSetHashMap中,它们的equals相等,那么,它们的hashcode值就必须相等。
     如果不是要保存在HashSetHashMap,则与hashcode没有什么关系了,这时候hashcode不等是可以的,例如arrayList存储的对象就不用实现hashcode,当然,我们没有理由不实现,通常都会去实现的。






欢迎光临 飞网论坛 (https://bbs.cfei.net/) Powered by Discuz! X3.2