Preguntas etiquetadas con hashcode

Un código hash es el resultado de aplicar una función hash a los datos, lo que generalmente resulta en un número entero.

174
¿Por qué usar un número primo en hashCode?

Me preguntaba por qué los primos se usan en el hashCode()método de una clase . Por ejemplo, cuando utilizo Eclipse para generar mi hashCode()método, siempre se 31usa el número primo : public int hashCode() { final int prime = 31; //... } Referencias Aquí hay un buen manual sobre Hashcode y un...

162
Implementación predeterminada para Object.GetHashCode ()

¿Cómo funciona la implementación predeterminada para el GetHashCode()trabajo? ¿Y maneja estructuras, clases, matrices, etc. de manera eficiente y lo suficientemente bien? Estoy tratando de decidir en qué casos debo empacar el mío y en qué casos puedo confiar de manera segura en que la...

160
Buena función de hash para cadenas

Estoy tratando de pensar en una buena función hash para cadenas. Y estaba pensando que podría ser una buena idea resumir los valores Unicode para los primeros cinco caracteres de la cadena (suponiendo que tenga cinco, de lo contrario, pare donde termina). ¿Sería una buena idea, o es mala? Estoy...

136
Pautas de GetHashCode en C #

Leí en el libro Essential C # 3.0 y .NET 3.5 que: Los retornos de GetHashCode () durante la vida de un objeto en particular deben ser constantes (el mismo valor), incluso si los datos del objeto cambian. En muchos casos, debe almacenar en caché el método return para aplicar esto. ¿Es esta una...

134
Consistencia de hashCode () en una cadena Java

El valor de hashCode de una cadena Java se calcula como ( String.hashCode () ): s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1] ¿Hay alguna circunstancia (por ejemplo, versión de JVM, proveedor, etc.) en la que la siguiente expresión se evaluará como falsa? boolean expression = "This is a Java...