【发布时间】:2011-07-09 03:44:37
【问题描述】:
Bert Bates 和 Kathy Sierra 的 SCJP 6 学习指南在第 554 页(以及其他要求)指出 x.hashCode() != y.hashCode() 要求 x.equals(y) == false 。
但是 Object 的 Javadoc 并没有明确提到这样的要求。 Quote:
如果两个对象根据equals(Object)方法相等,那么对两个对象分别调用hashCode方法必须产生相同的整数结果。
我是否应该将 Javadoc 所说的内容视为实质含义,例如 eq -> hc?那么这两个来源之间就不会有冲突了。
【问题讨论】: