Unterschied zwischen HashMap und TreeMap

Inhaltsverzeichnis:

Unterschied zwischen HashMap und TreeMap
Unterschied zwischen HashMap und TreeMap

Video: Unterschied zwischen HashMap und TreeMap

Video: Unterschied zwischen HashMap und TreeMap
Video: Java Tutorial - HashMap und TreeMap 2024, Dezember
Anonim

Hauptunterschied – HashMap vs. TreeMap

In der Programmierung gibt es verschiedene Mechanismen, um Daten zu sammeln. Sammlungen sind eine Methode zum Speichern von Daten. Programmiersprachen wie Java verwenden Collections. Es ist ein Framework mit Klassen und Schnittstellen zum Speichern und Bearbeiten einer Reihe von Datenelementen. In einem normalen Array muss eine feste Anzahl von Elementen gespeichert werden. Das ist eine Einschränkung von Arrays. Stattdessen kann der Programmierer Sammlungen verwenden. Operationen wie Einfügen, Löschen, Sortieren und Suchen können mithilfe von Sammlungen durchgeführt werden. In Java gehört das Map-Interface zu Collections. Die Karte wird verwendet, um Daten in den Schlüssel-Wert-Paaren darzustellen. Es gibt nur eindeutige Schlüssel und jeder hat einen entsprechenden Wert. HashMap und TreeMap sind Klassen, die die Map-Schnittstelle implementieren. Eine HashMap ist eine kartenbasierte Sammlungsklasse, die zum Speichern von Schlüssel- und Wertpaaren verwendet wird, die keine bestimmte Reihenfolge in Datenelementen beibeh alten. Eine TreeMap ist eine kartenbasierte Sammlungsklasse, die zum Speichern von Schlüssel- und Wertpaaren verwendet wird, die die aufsteigende Reihenfolge von Datenelementen beibeh alten. Der Hauptunterschied zwischen HashMap und TreeMap besteht darin, dass HashMap keine bestimmte Reihenfolge der Datenelemente beibehält, während TreeMap die aufsteigende Reihenfolge der Datenelemente beibehält.

Was ist HashMap?

HashMap ist eine Klasse, die die Map-Schnittstelle implementiert. Es erweitert die AbstractMap-Klasse und implementiert die Map-Schnittstelle. Eine HashMap enthält die Schlüssel-Wert-Paare. Jedes Element ist einzigartig. Es ist einfach, die Elemente in HashMap mit dem Schlüssel zu finden. Das Deklarieren einer HashMap ist wie folgt.

öffentliche Klasse HashMap erweitert AbstractMap implementiert Karte, klonbar, serialisierbar

Das K bezieht sich auf den Schlüssel, während V sich auf den Wert bezieht, der diesem bestimmten Schlüssel entspricht. Jedes Schlüssel/Wert-Paar ist ein Eintrag der HashMap.

Unterschied zwischen HashMap und TreeMap
Unterschied zwischen HashMap und TreeMap

Abbildung 01: Kartenoberfläche

Stellen Sie sich ein Szenario wie folgt vor, um die HaspMap zu verstehen. Wenn der Programmierer dort eine Reihe von Studentennamen und entsprechenden Indexnummern speichern möchte, kann er die HashMap verwenden. Die Schülernamen werden verwendet, um die Indexnummern zu finden. Daher sind Schülernamen die Schlüssel, während Indexnummern die Werte sind.

Unterschied zwischen HashMap und TreeMap _Abbildung 02
Unterschied zwischen HashMap und TreeMap _Abbildung 02

Abbildung 02: HashMap-Programm mit Java

Gemäß obigem Programm wird ein HashMap-Objekt erstellt. Dann kann der Programmierer mit diesem Objekt Elemente hinzufügen. Werte können mit der Put-Methode eingefügt werden. Um die Werte abzurufen, sollte der Programmierer die get-Methode mit dem Schlüssel verwenden. Bei Verwendung von studentList.get("150"); es wird den entsprechenden Namen zu diesem Index drucken, der Ann ist. Wenn der Programmierer alle Werte erh alten möchte, kann er Map. Entry verwenden, um alle Schlüssel und Werte zu drucken. Beim Betrachten der Ausgabe ist ersichtlich, dass HashMap keine bestimmte Reihenfolge beibehält. Die Elemente werden nicht in der eingefügten Reihenfolge gedruckt. Die Elemente werden in zufälliger Reihenfolge gedruckt.

Was ist TreeMap?

Die TreeMap ist eine Klasse in Java, die das Map-Interface implementiert. Ähnlich wie eine HashMap wird es auch zum Speichern von Schlüssel-Wert-Paaren verwendet, jedoch in aufsteigender Reihenfolge. Die TreeMap implementiert die NavigableMap und NavigableMap erweitert SortedMap und SortedMap erweitert Map. Jedes Element ist einzigartig. Das Deklarieren einer TreeMap ist wie folgt.

öffentliche Klasse TreeMap erweitert AbstractMap implementiert NavigableMap, klonbar, serialisierbar

Das K bezieht sich auf den Schlüssel, während V sich auf den Wert bezieht, der diesem bestimmten Schlüssel entspricht. Jedes Schlüssel/Wert-Paar ist ein Eintrag der TreeMap.

Hauptunterschied zwischen HashMap und TreeMap
Hauptunterschied zwischen HashMap und TreeMap

Abbildung 03: TreeMap-Programm mit Java

Gemäß obigem Programm wird ein TreeMap-Objekt erstellt. Dann kann der Programmierer mit diesem Objekt Elemente hinzufügen. Werte können mit der Put-Methode eingefügt werden. Um die Werte abzurufen, sollte der Programmierer die get-Methode mit dem Schlüssel verwenden. Bei Verwendung von studentList.get("150"); es wird den entsprechenden Namen zu diesem Index drucken, der Ann ist. Wenn der Programmierer alle Werte erh alten möchte, kann er Map. Entry verwenden, um alle Schlüssel und Werte zu drucken. Beim Betrachten der Ausgabe ist ersichtlich, dass TreeMap eine bestimmte Reihenfolge beibehält. Die Elemente werden in aufsteigender Reihenfolge gedruckt.

Was sind die Ähnlichkeiten zwischen HashMap und TreeMap?

  • Sowohl HashMap als auch TreeMap implementieren die Map-Schnittstelle.
  • Sowohl HashMap als auch TreeMap können viele Elemente speichern und manipulieren.
  • Sowohl HashMap als auch TreeMap enth alten Schlüssel-Wert-Paare.
  • Sowohl HashMap als auch TreeMap können viele Nullwerte haben.
  • Es gibt keine Begrenzung für die Anzahl der Elemente, die sowohl in HashMap als auch in TreeMap gespeichert werden können.

Was ist der Unterschied zwischen HashMap und TreeMap?

HashMap vs. TreeMap

Eine HashMap ist eine kartenbasierte Sammlungsklasse, die zum Speichern von Schlüssel- und Wertpaaren verwendet wird, die keine bestimmte Reihenfolge in Datenelementen beibeh alten. Eine TreeMap ist eine kartenbasierte Sammlungsklasse, die zum Speichern von Schlüssel-Wert-Paaren verwendet wird, die die aufsteigende Reihenfolge der Datenelemente beibehält.
Bestellung
Die HashMap behält die Reihenfolge nicht bei. Die TreeMap behält die aufsteigende Reihenfolge bei.
Nulltaste
Die HashMap kann einen Nullschlüssel enth alten. Die TreeMap darf keinen Nullschlüssel haben.
Leistung
HashMap ist schneller als TreeMap. TreeMap ist langsamer als HashMap.

Zusammenfassung – HashMap vs. TreeMap

Programmiersprachen wie Java enth alten das Collection-Framework. In Arrays kann es eine feste Anzahl von Elementen geben. Daher sollte die Array-Größe am Anfang initialisiert werden. In Sammlungen kann der Programmierer beliebig viele Elemente speichern. Es gibt keine bestimmte Menge zu speichern. Die Karte ist eine Schnittstelle, die zum Sammlungsframework gehört. Eine HashMap ist eine kartenbasierte Sammlungsklasse, die zum Speichern von Schlüssel- und Wertpaaren verwendet wird, die keine bestimmte Reihenfolge in Datenelementen beibeh alten. Eine TreeMap ist eine kartenbasierte Sammlungsklasse, die zum Speichern von Schlüssel- und Wertpaaren verwendet wird, die die aufsteigende Reihenfolge der Datenelemente beibehält. In diesem Artikel wurde der Unterschied zwischen HashMap und TreeMap erläutert, die die Map-Schnittstelle implementieren. Der Unterschied zwischen HashMap und TreeMap besteht darin, dass HashMap keine bestimmte Reihenfolge der Datenelemente beibehält, während TreeMap die aufsteigende Reihenfolge der Datenelemente beibehält.

Empfohlen: