Como devo mapear por muito tempo para int em hashCode ()?
Eu tenho uma variedade de objetos que têm umlong
campo cujo valor identifica exclusivamente um objeto específico em todo o sistema, como um GUID. Eu supereiObject.equals()
para usar esse ID para comparação, porque eu quero que ele funcione com cópias do objeto. Agora eu quero substituirObject.hashCode()
também, o que basicamente significa mapear meulong
para algunsint
valor de retorno.
Se eu entendi o propósito dehashCode
corretamente, é usado principalmente em tabelas de hash; portanto, uma distribuição uniforme seria desejável. Isso significaria simplesmente retornarid % 2^32
seria suficiente. Isso é tudo ou devo estar ciente de outra coisa?