faecher:informatik:oberstufe:java:algorithmen:assoziative_arrays:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:oberstufe:java:algorithmen:assoziative_arrays:start [04.12.2022 19:35] – [Wichtige Methoden bei der Verwendung von HashMaps] Frank Schiebelfaecher:informatik:oberstufe:java:algorithmen:assoziative_arrays:start [31.03.2025 16:36] (aktuell) – [Anmerkung zu Wrapper-Klassen] Frank Schiebel
Zeile 60: Zeile 60:
 [...] [...]
 </code> </code>
 +
 +==== Ein Element auslesen ====
 +
 +
 +
 +Um den Wert eines Elements einer HashMap auszulesen verwendet man die get()-Methode mit dem Schlüssel des Elements:
 +
 +<code java>
 +String hsengland = hauptstadt.get("England");
 +</code>
 +
 +====  Elemente löschen ====
 +
 +Elemente löschen kann man unter Angabe des Schlüssels mit der Methode remove().
 +
 +<code java>
 +hauptstadt.remove("England");
 +</code>
 +
 +Um **alle** Elemente zu löschen, kann man die Methode clear() verwenden: 
 +
 +<code java>
 +hauptstadt.clear();
 +</code>
 +
 +==== Anzahl der Elemente herausfinden ====
 +
 +Mit Hilfe der Methode size() kann man die Zahl der Elemene in den HashMap herausfinden: 
 +
 +<code java>
 +int elementAnzahl = hauptstadt.size();
 +</code>
 +
 +==== Operationen auf allen Elementen: Eine HashMap mit einer Schleife durchlaufen ====
 +
 +Die Elemente einer HashMap kann man mit einer foreach-Schleife durchlaufen. Dabei hat man im wesentlichen zwei Möglichkeiten: 
 +
 +**(1) Man durchläuft die Menge aller Schlüssel und beschafft sich die Werte zu den Schlüsseln mit der get()-Methode**
 +
 +Die Menge aller Schlüssel erhält man mit der Methode keySet().
 +
 +<code java>
 +// Gibt die Schlüssel aus
 +for (String key : hauptstadt.keySet()) {
 +  System.out.println(key);
 +}
 +
 +// Gibt Schlüssel und Werte aus
 +for (String key : hauptstadt.keySet()) {
 +  System.out.println("key: " + key + " value: " + hauptstadt.get(key));
 +}
 +</code>
 +
 +**(2) Wenn man an den Schlüsseln nicht interessiert ist, kann man direkt die Werte durchlaufen**
 +
 +Mit der Methode values() kann man sich direkt die Menge der Werte beschaffen, und diese mit einer foreach-Schleife durchlaufen.
 +
 +<code java>
 +// Nur die Werte beschaffen und ausgeben
 +for (String stadt : hauptstadt.values()) {
 +  System.out.println(stadt);
 +}
 +
 +</code>
 +
 +===== Anmerkung zu Wrapper-Klassen =====
 +
 +
 +Schlüssel und Werte bei HashMaps sind stets **Objekte**. Aus diesem Grund schlägt eine Verwendung mit primitiven Datentypen wie int, char , double fehl: ''HashMap<int,char> meineMap = new HashMap<int, char>();'' liefert eine Fehlermeldung.
 +
 +{{ :faecher:informatik:oberstufe:java:algorithmen:assoziative_arrays:auswahl_419.png |}}
 +
 +Das Problem wird gelöst, indem man für die primitiven Datentypen die zugehörigen Wrapper-Klassen verwendet:
 +
 +<code java>
 +HashMap<Integer,Character> meineMap = new HashMap<Integer, Character>();
 +</code>
 +
 +==== Übersicht über die Wrapper-Klassen ====
 +
 +
 +^  Primitiver Typ  ^  Wrapper Klasse  ^
 +|  byte            |  Byte            |
 +|  short            Short           |
 +|  int              Integer         |
 +|  long            |  Long            |
 +|  float            Float           |
 +|  double          |  Double          |
 +|  char            |  Character       |
 +|  boolean          Boolean         |
 +
 +
 +
  • faecher/informatik/oberstufe/java/algorithmen/assoziative_arrays/start.1670182526.txt.gz
  • Zuletzt geändert: 04.12.2022 19:35
  • von Frank Schiebel