Eine Hashtabelle ist eine dynamische Datenstruktur, die verwendet wird, um Schlüssel (engl. keys) und ihre dazugehörigen Werte (engl. values) zu speichern und zu verwalten.
Eine Hashtabelle ist eine dynamische Datenstruktur. In ihr werden Schlüsseln (engl. keys) bestimmte Werte (engl. values) zugewiesen.
key1 | key2 | key3 | key4 |
---|---|---|---|
value1, value2 | value3 | value4, value5, value6 | value7 |
Deklarieren
Die Hashtabelle ist ein Teil des Packages java.util
und muss noch importiert werden, bevor du sie verwenden kannst.
In dem java.util
-Paket gibt es mehrere Varianten von Hashtabellen. Da HashMap
oft verwendet wird, nutzen wir im Folgenden diese. Zum Importieren kannst du entweder über HashMap
hovern (mit der Maus über das Wort gehen) und import class auswählen oder über deine Klasse import java.util.HashMap;
schreiben.
Du kannst auch direkt das gesamte util
-Paket importieren, dafür verwendest du einfach den Befehl import java.util.*;
:
Besuche die App, um alle Inhalte zu sehen!
Jetzt muss deine HashMap
noch deklariert werden:
Besuche die App, um alle Inhalte zu sehen!
Dabei werden zuerst die Datentypen angegeben. Es soll sich hier um eine Hashtabelle handeln, in der int-Werte (values) mit einem dazugehörigen String-Schlüssel (key) gespeichert werden. Daher schreibst du HashMap<String, Integer>
. Die Reihenfolge ist dabei entscheidend. Der erste Datentyp steht für den Typ des keys und der zweite für den Typ des values.
Du kannst nicht int
als Datentyp verwenden, da in den util
-Paketen keine primitiven Datentypen verwendet werden können. Daher musst du auf Integer
zurückgreifen.
Die values müssen nicht immer Integer sein, genau wir die keys keine Strings sein müssen, das ist hier nur ein Beispiel.
Hinter HashMap <String, Integer>
folgt der Name deiner HashMap, hier also hashmap
.
Hinter einem Gleichheitszeichen steht das Keyword new
und die Art der HashMap, also hier einfach wieder HashMap
.
Dahinter folgen noch einmal in spitzen Klammern die Datentypen, die gespeichert werden soll, also wieder String, Integer
.
Am Ende schreibst du runde Klammern und natürlich wie immer ein Semikolon.
Operationen
Dank des util
-Pakets, welches du dir importiert hast, stehen dir nicht nur die darin enthaltenen Datenstrukturen, sondern auch ihre Operationen zur Verfügung. Das ist super praktisch, da du dadurch diese nicht selbst implementieren musst!
Auf einer Hashmap können dabei folgende Operationen ausgeführt werden:
put(key, value)
get(key)
remove(key)
replace(key, value)
containsValue(value)
containsKey(key)
size()
put(key, value)
erstellt einen neuen key mit zugehörigem value.
get(key)
gibt den zugehörigen value zu dem in den Klammern übergebenen key aus.
remove(key)
wird verwendet, um ein key und den dazugeörigen value aus der Hashmap zu löschen.
replace(key, value)
ersetzt den value eines keys mit dem neuen in der Klammer übergebenen value.
containsValue(value)
überprüft, ob der in den Klammern übergebene value in der Hashmap enthalten ist (true
) oder nicht (false
).
containsKey(key)
überprüft, ob der in den Klammern übergebene key in der Hashmap enthalten ist (true
) oder nicht (false
).
size()
gibt die Größe der Hashmap zurück.
Hier sind noch einmal alle vorgestellten Operationen der Hashmap dargestellt:
Besuche die App, um alle Inhalte zu sehen!
Beispiel
Jan, Nicole und Jeremiah sind auf einem Campingausflug. Weil sie die Zeit auch für einen Social Media-Detox nutzen möchten, wollen sie ihre Handys in einen Safe schließen. Damit sie am Ende des langen Trips ihre Pins noch wissen, legen sie noch einen Zettel mit ihren Pins in den Safe:
Besuche die App, um alle Inhalte zu sehen!
Gerade als sie den Safe schließen wollen, fällt Nicole auf, dass sie vielleicht einen Zahlendreher in ihrer Pin hat. Sie möchte sich dabei nur ihre Pin anschauen, um nochmal zu überprüfen, ob sie wirklich einen Fehler gemacht hat:
Besuche die App, um alle Inhalte zu sehen!
Tatsächlich hat sich ein Zahlendreher eingeschlichen! Nicole ändert ihre Pin schnell um:
Besuche die App, um alle Inhalte zu sehen!
Nachdem sie ihre Pin geändert hat, schließen sie den Safe zu und verstauen den Schlüssel. Der Social Media-Detox kann starten!