Hashtabelle - Datenstrukturen in Java

Hashtabelle in Java

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.*;:

Hier versteckt sich noch mehr!
Besuche die App, um alle Inhalte zu sehen!

Jetzt muss deine HashMap noch deklariert werden:

Hier versteckt sich noch mehr!
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:

Hier versteckt sich noch mehr!
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:

Hier versteckt sich noch mehr!
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:

Hier versteckt sich noch mehr!
Besuche die App, um alle Inhalte zu sehen!

Tatsächlich hat sich ein Zahlendreher eingeschlichen! Nicole ändert ihre Pin schnell um:

Hier versteckt sich noch mehr!
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!

Safe mit Handys und einem Zettel, auf dem Passwörter stehen.
No items found.

simpleclub ist am besten in der App.

Mit unserer App hast du immer und überall Zugriff auf: Lernvideos, Erklärungen mit interaktiven Animationen, Übungsaufgaben, Karteikarten, individuelle Lernpläne uvm.

Jetzt simpleclub Azubi holen!

Mit simpleclub Azubi bekommst du Vollzugang zur App: Wir bereiten dich in deiner Ausbildung optimal auf deine Prüfungen in der Berufsschule vor. Von Ausbilder*innen empfohlen.

Jetzt simpleclub Azubi holen