如何在Java中为每个对象获取唯一的ID?
我设置了一个向量集,以避免用迭代器分配之类的东西破坏GC(对于HashSet的值或键的每个遍历,对于集合引用和集合迭代器,您将分别获得一个新的/免费的)
无论如何,该Object.hashCode()
方法是每个对象的唯一ID。(64位版本会失败吗?)
但是无论如何它都是可重写的,因此不能保证唯一,也不能保证每个对象实例唯一。
如果要创建“ ObjectSet”,如何为每个对象实例获取保证的唯一ID?
我刚刚找到了这个:答案。
如何获取覆盖hashCode()的对象的唯一ID?
回答:
java.lang.System.identityHashCode(obj);
如果您确实需要它并了解其影响,它将为您完成此操作。即使提供哈希码的方法已被覆盖,它也会获得标识哈希码。
以上是 如何在Java中为每个对象获取唯一的ID? 的全部内容, 来源链接: utcz.com/qa/430836.html