Das Prinzip wird wie folgt eingeführt:
HashMap wird basierend auf dem Hash-Algorithmus implementiert.
(Freigabe von Online-Lernvideo-Tutorials: Java-Video-Tutorial)
Bei Verwendung der Methode put(key, value) wird HashMap basierend auf key.hashCode abgerufen ()-Methode Rufen Sie den Hash-Wert des Schlüssels ab und ermitteln Sie dann die entsprechende Bucket-Position basierend auf dem Hash-Wert. Wenn in diesem Bereich bereits ein Element vorhanden ist, wird ein weiterer euqal()-Vergleich durchgeführt Das Hinzufügen schlägt fehl, da HashMap nicht denselben Schlüsselwert zulässt. Wenn sie nicht gleich sind, handelt es sich lediglich um einen einfachen Hash-Konflikt.
Vor JDK 1.8 speichert HashMap dieses Element im nächsten Knoten der verknüpften Liste. HashMap speichert Schlüssel-Wert-Paare in jedem verknüpften Listenknoten. Nach JDK1.8 hat HashMap einen rot-schwarzen Baum hinzugefügt. Wenn also die Anzahl der verknüpften Listenknoten 8 überschreitet, wird sie von der verknüpften Liste in einen rot-schwarzen Baum konvertiert, und sobald sie weniger als 8 beträgt, wird dies der Fall sein vom Rot-Schwarz-Baum zurück in die verknüpfte Liste konvertiert.
Empfohlene verwandte Artikel und Tutorials: Java Quick Start
Das obige ist der detaillierte Inhalt vonWie funktioniert HashMap?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!