最近我读了这个 Developer Works文档.
该文档是关于定义hashCode()和equals()有效和正确的,但我无法弄清楚为什么我们需要覆盖这两种方法.
hashCode()
equals()
如何有效地实施这些方法?
java equals hashcode
我创建了一个向量集,以避免使用迭代器分配等来破坏GC(对于HashSet的值或键的每次遍历,您为set引用和set迭代器获取new/free)
无论如何,该Object.hashCode()方法应该是每个对象的唯一ID.(对于64位版本会失败吗?)
Object.hashCode()
但无论如何它都是可覆盖的,因此不能保证每个对象实例的唯一性和唯一性.
如果我想创建一个"ObjectSet",我如何获得一个对象的每个实例的保证唯一ID?
我刚刚发现了这个:它回答了它.
如何获取覆盖hashCode()的对象的唯一ID?
java
java ×2
equals ×1
hashcode ×1