Bei 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 Gruppe von Datenelementen. In einem normalen Array gibt es eine feste Anzahl von zu speichernden Elementen. Das ist eine Beschränkung von Arrays. Stattdessen kann der Programmierer Sammlungen verwenden. Vorgänge wie Einfügen, Löschen, Sortieren und Suchen können mithilfe von Sammlungen durchgeführt werden. In Java gehört die Kartenschnittstelle zu Sammlungen. 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 Map-basierte Auflistungsklasse, die zum Speichern von Schlüssel- und Wertepaaren verwendet wird, die keine bestimmte Reihenfolge in Datenelementen einhalten. Eine TreeMap ist eine Map-basierte Auflistungsklasse, die zum Speichern von Schlüssel- und Wertepaaren verwendet wird, die die aufsteigende Reihenfolge der Datenelemente beibehalten. Das Hauptunterschied zwischen HashMap und TreeMap ist das HashMap behält keine bestimmte Reihenfolge in Datenelementen bei, während TreeMap die aufsteigende Reihenfolge von Datenelementen beibehält.
1. Übersicht und Schlüsseldifferenz
2. Was ist HashMap?
3. Was ist TreeMap?
4. Ähnlichkeiten zwischen HashMap und TreeMap
5. Side-by-Side-Vergleich - HashMap vs TreeMap in Tabellenform
6. Zusammenfassung
HashMap ist eine Klasse, die die Kartenschnittstelle 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 leicht, die Elemente in HashMap mit der Taste zu finden. Die Deklaration einer HashMap lautet wie folgt.
public class HashMap erweitert AbstractMap implementiert Map, Cloneable, Serializable
Das K bezieht sich auf den Schlüssel, während sich V auf den Wert bezieht, der diesem bestimmten Schlüssel entspricht. Jedes Schlüssel / Wert-Paar ist ein Eintrag der HashMap.
Abbildung 01: Kartenoberfläche
Nehmen Sie ein Szenario wie folgt an, um die HaspMap zu verstehen. Wenn der Programmierer dort einen Satz Studentennamen und entsprechende Indexnummern speichern möchte, kann er die HashMap verwenden. Die Schülernamen werden verwendet, um die Indexnummern zu finden. Daher sind Studentennamen die Schlüssel, während Indexnummern die Werte sind.
Abbildung 02: HashMap-Programm mit Java
Gemäß dem obigen Programm wird ein Objekt von HashMap erstellt. Dann kann der Programmierer Elemente hinzufügen, die dieses Objekt verwenden. Werte können mit der put-Methode eingefügt werden. Um die Werte abzurufen, sollte der Programmierer die Methode get mit dem Schlüssel verwenden. Bei Verwendung von studentList.get ("150"); Der entsprechende Name wird an den Index ausgegeben, der Ann ist. Wenn der Programmierer alle Werte abrufen möchte, kann er mit Map.Entry alle Schlüssel und Werte drucken. Bei der Beobachtung der Ausgabe ist ersichtlich, dass HashMap keine bestimmte Reihenfolge einhält. Die Elemente werden nicht in der eingefügten Reihenfolge gedruckt. Die Elemente werden in zufälliger Reihenfolge gedruckt.
Die TreeMap ist eine Klasse in Java, die die Map-Schnittstelle implementiert. Ähnlich wie eine HashMap wird sie 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. Die Deklaration einer TreeMap lautet wie folgt.
public class TreeMap erweitert AbstractMap implementiert NavigableMap, Cloneable, Serializable
Das K bezieht sich auf den Schlüssel, während sich V auf den Wert bezieht, der diesem bestimmten Schlüssel entspricht. Jedes Schlüssel / Wert-Paar ist ein Eintrag der TreeMap.
Abbildung 03: TreeMap-Programm unter Verwendung von Java
Gemäß dem obigen Programm wird ein Objekt von TreeMap erstellt. Dann kann der Programmierer Elemente hinzufügen, die dieses Objekt verwenden. Werte können mit der put-Methode eingefügt werden. Um die Werte abzurufen, sollte der Programmierer die Methode get mit dem Schlüssel verwenden. Bei Verwendung von studentList.get ("150"); Der entsprechende Name wird an den Index ausgegeben, der Ann ist. Wenn der Programmierer alle Werte abrufen möchte, kann er mit Map.Entry alle Schlüssel und Werte drucken. Wenn Sie die Ausgabe beobachten, ist zu erkennen, dass TreeMap eine bestimmte Reihenfolge einhält. Die Elemente werden in aufsteigender Reihenfolge gedruckt.
HashMap vs TreeMap | |
Eine HashMap ist eine Map-basierte Auflistungsklasse, die zum Speichern von Schlüssel- und Wertepaaren verwendet wird, die keine bestimmte Reihenfolge in Datenelementen einhalten. | Eine TreeMap ist eine auf Karten basierende Erfassungsklasse, die zum Speichern von Schlüssel- und Wertepaaren verwendet wird, wobei die aufsteigende Reihenfolge der Datenelemente beibehalten wird. |
Auftrag | |
Die HashMap behält die Reihenfolge nicht bei. | Die TreeMap behält die aufsteigende Reihenfolge bei. |
Null-Schlüssel | |
Die HashMap kann einen Nullschlüssel enthalten. | Die TreeMap darf keinen Nullschlüssel haben. |
Performance | |
HashMap ist schneller als TreeMap. | TreeMap ist langsamer als HashMap. |
Programmiersprachen wie Java enthalten das Collection-Framework. In Arrays kann es eine feste Anzahl von Elementen geben. Daher sollte die Arraygröße zu Beginn initialisiert werden. In Sammlungen kann der Programmierer bei Bedarf viele Elemente speichern. Es ist keine bestimmte Menge zu speichern. Die Karte ist eine Schnittstelle, die zum Sammlungsrahmen gehört. Eine HashMap ist eine Map-basierte Auflistungsklasse, die zum Speichern von Schlüssel- und Wertepaaren verwendet wird, die keine bestimmte Reihenfolge in Datenelementen einhalten. Eine TreeMap ist eine auf Karten basierende Erfassungsklasse, die zum Speichern von Schlüssel- und Wertepaaren verwendet wird, wobei die aufsteigende Reihenfolge der Datenelemente beibehalten wird. In diesem Artikel wurde der Unterschied zwischen HashMap und TreeMap erläutert, die die Map-Schnittstelle implementiert. Der Unterschied zwischen HashMap und TreeMap besteht darin, dass HashMap keine bestimmte Reihenfolge in Datenelementen einhält, während TreeMap die aufsteigende Reihenfolge von Datenelementen beibehält.
1. "HashMap in Java - Javatpoint". Die Stelle, Hier verfügbar
2. "TreeMap in Java - Javatpoint". Die Stelle, Hier verfügbar
1.'Java.util.Map-Hierarchie'von Ramlmn - eigene Arbeit, (CC BY-SA 4.0) über Commons Wikimedia