viernes, 20 de junio de 2014

hashcode

Cuando usamos interfaces tipo Set,  necesitamos que los objetos de la colección tengan el método hashcode() correctamente funcionando. Con los objetos clave del interface Map ocurre lo mismo. Esto es porque para localizar los objetos, o las claves, dentro de la colección se utiliza el hashcode en su optimizado algoritmo de búsqueda.

¿Qué es el hashcodehashcode es un entero más o menos único para cada objeto, y se suele obtener a partir de los campos del objeto.

http://www.ibm.com/developerworks/java/library/j-jtp05273/index.html

Por otro lado, ciertos entornos de desarrollo como Eclipse nos puede generar un hashcode si así se lo requerimos, eligiendo qué campos son los significativos.

Finalmente, hemos de comprobar siempre que equals() y hashcode() actúen en sintonía, como bien dice el artículo.