我应该如何在 hashCode() 中将 long 映射到 int?
我有一系列对象,这些对象具有一个字段,其值唯一地标识整个系统中的特定对象,就像 GUID 一样。我已经覆盖了使用此id进行比较,我希望它与对象的副本一起使用。现在我也想覆盖,这基本上意味着将我映射到某个返回值。long
Object.equals()
Object.hashCode()
long
int
如果我正确地理解了其目的,它主要用于哈希表,因此均匀分布将是可取的。这意味着,只需返回就足够了。仅此而已,还是我应该意识到其他事情?hashCode
id % 2^32