10. HashMap

Im letzten Kapitel hast du schon eine Art Daten zu speichern kennengelernt und zwar mit Arrays, wobei zwischen eindimensionalen und mehrdimensionalen Arrays unterschieden wird.
Eine HashMap dient ebenfalls zum Speichern von Daten. In eine HashMap werden Key-Value Paare eingespeichert. Du musst also beim Speichern jedes Mal ein Key und dazu ein Value angeben.
Mit Hilfe des Keys kannst du dann den Wert ausgeben. Der Datentyp des Schlüssels und des Wertes kann ein beliebiger sein. Wichtig ist, dass kein Schlüssel mehrmals vorkommen darf, denn ansonsten weiss der Computer nie, welchen der beiden verfügbaren Werten du haben möchtest.

10.1 HashMap erstellen

Folgend zeige ich dir, wie man eine HashMap erzeugt:

HashMap<String,String> meineHashMap = new HashMap<>();


Um eine HashMap zu erstellen musst du zunächst HashMap eintippen und danach stehen, wie du oben sehen kannst, zwei Datentypen, abgetrennt mit einem Komma und in eckigen Klammern. Diese stehen jeweils für den Schlüssel und den Wert. Der erste Datentyp gilt für den Schlüssel und der zweite für den Wert. Dann kommt der Name der HashMap und ein Gleichheitszeichen. Was nun folgt, kennst du wahrscheinlich schon von den Arrays. Du musst new HashMap und anschliessend wieder die eckigen Klammern eingeben.
Hast du das alles nun gemacht, wird deine Entwicklungsumgebung trotzdem einen Fehler anzeigen und das Programm erkennt die HashMap nicht. Um diesen Fehler zu beheben musst du einfach nur die HashMap importieren. Bei NetBeans erscheint dafür links neben dem Code eine Glühbirne. Diese klickst du an und wählst dann Add import for java.util.HashMap. Danach sollten keine Fehleranzeigen mehr erscheinen.

hashmappng

10.2 Werte hinzufügen

Jetzt weisst du, wie man eine HashMap erstellt, jedoch ist sie noch leer und enthält keine Daten.
Im nachfolgenden Code siehst du, wie man Werte hinzufügt.

meineHashMap.put("Key1","Value1");


Um Schlüssel und die dazugehörenden Werte in deine HashMap zu speichern, musst du zunächst deine HashMap mit ihrem Namen ansprechen und danach von den verfügbaren Methoden der HashMap Klasse die put-Methode auswählen. Diese wird dann von dir einen Schlüssel und den Wert fordern. Beachte dabei die Datentypen des Schlüssels und des Wertes, die du beim Erstellen angegeben hast.

10.3 Werte entfernen

Natürlich willst du nicht nur Werte in deine HashMap speichern, sondern auch entfernen.
Wie du das machen kannst, zeige ich dir mit Hilfe des folgenden Codeausschnitts:

meineHashMap.remove("Key1");

Für das Entfernen von Werten stellt dir die ArrayList die remove-Methode zur Verfügung. Du musst nur den Key angeben. In unserem Fall haben wir hiermit den Wert "Value1" aus unserer ArrayList entfernt.

10.4 Werte ausgeben

Logischerweise kannst du Daten nicht nur in die HashMap speichern, du kannst die Werte auch wieder herauslesen. Dies tust du mit der get-Methode der HashMap-Klasse. Wie auch beim Hinzufügen von Werten musst du auch beim Zugreifen auf Werten deine HashMap ansprechen.
Beim Auslesen musst du jedoch den Schlüssel zu deinem gewünschten Wert kennen, denn ohne Schlüssel kann der Computer nicht auf den Wert zugreifen.


meineHashMap.get("Key1");

 
 

Stelle uns deine Frage


Julien Rösch


 

Amazon

 

E-Book

 

Gefällt dir CodeStarter?