Comment un Java HashMap de gérer les différents objets avec le même code de hachage?

Selon ma compréhension que j'en pense:

  1. Il est parfaitement légal pour les deux objets ont le même hashcode.
  2. Si deux objets sont égaux (à l'aide de la méthode equals ()), alors qu'ils ont le même hashcode.
  3. Si deux objets ne sont pas égaux, ils ne peuvent pas avoir le même hashcode

Suis-je la corriger?

Maintenant, si ne me trompe pas, j'ai la question suivante:
Le HashMap utilise en interne le hashcode de l'objet. Donc, si deux objets ont la même hashcode, alors comment peut - HashMap suivre les clés qu'elle utilise?

Quelqu'un peut m'expliquer comment le HashMap utilise en interne le hashcode de l'objet?

  • Pour l'enregistrement: #1 et #2 sont correctes, #3 est faux: Deux objets qui ne sont pas égaux peuvent avoir le même code de hachage.
  • #1 et #3 sont contradictoires même
  • En effet, si #2 n'est pas respectée, alors la equals() de la mise en œuvre (ou sans doute le hashCode()) est incorrect.
InformationsquelleAutor akshay | 2011-06-27