Java Map-Interface – Umfassender Leitfaden zu Map, Implementierungen und Schlüsselmethoden
Java Map-Interface
Dieses Tutorial taucht in Javas Map-Interface ein, deckt Struktur, Implementierungen, Schlüsselmethoden und reale Nutzung ab.
Das Map-Interface, Teil des java.util-Pakets, stellt das Rückgrat für Key/Value-Paar-Collections in Javas Collections Framework dar.
Wie Map funktioniert
In Java speichert eine Map Daten als eindeutige Schlüssel/Wert-Paare. Jeder Schlüssel ist einzigartig und mappt auf einen einzelnen Wert, was sicherstellt, dass keine doppelten Schlüssel existieren.
Wir können einen Wert über seinen Schlüssel abrufen oder aktualisieren.

Zum Beispiel mappen die Schlüssel us, br und es auf die Werte United States, Brazil und Spain.
Bemerkenswert ist, dass das Map-Interface drei verschiedene Collections verwaltet:
- Eine Menge aller Schlüssel
- Eine Menge aller Werte
- Eine Menge aller Schlüssel/Wert-Assoziationen (Einträge)
Diese Mengen erlauben Ihnen, unabhängig auf Schlüssel, Werte oder Einträge zuzugreifen.
Klassen, die Map implementieren
Da Map ein Interface ist, können Sie es nicht direkt instanziieren. Stattdessen verwenden Sie eine der folgenden konkreten Klassen, die alle im java.util-Paket residieren:
HashMapEnumMapLinkedHashMapWeakHashMapTreeMap

Subinterfaces, die Map erweitern
Das Map-Interface wird von mehreren spezialisierten Subinterfaces erweitert, die Ordering- oder Nebenläufigkeits-Garantien hinzufügen:
SortedMap– Hält Einträge nach Schlüsseln sortiert.NavigableMap– ErweitertSortedMapmit Navigationsmethoden.ConcurrentMap– Bietet thread-sichere Operationen.

Map in Ihrem Code verwenden
Zuerst das Interface importieren:
import java.util.Map;
Dann eine konkrete Instanz erstellen. Zum Beispiel mit HashMap:
// Map-Implementierung mit HashMap Map<Key, Value> numbers = new HashMap<>();
Hier repräsentiert Key einen einzigartigen Identifikator, während Value die assoziierten Daten hält.
Kernmethoden von Map
Über die Collection-Interface-Methoden hinaus bietet Map spezialisierte Operationen:
- put(K, V) – Fügt Schlüssel/Wert-Paar hinzu; ersetzt Wert falls Schlüssel existiert.
- putAll() – Fügt Einträge einer anderen Map zusammen.
- putIfAbsent(K, V) – Fügt nur ein falls Schlüssel nicht bereits gemappt.
- get(K) – Ruft Wert für gegebenen Schlüssel ab, oder
nullfalls abwesend. - getOrDefault(K, defaultValue) – Gibt gemappten Wert oder angegebenen Default zurück.
- containsKey(K) – Prüft Schlüssel-Präsenz.
- containsValue(V) – Prüft Wert-Präsenz.
- replace(K, V) – Aktualisiert Wert für Schlüssel.
- replace(K, oldValue, newValue) – Bedingtes Ersetzen falls aktueller Wert matcht.
- remove(K) – Löscht Eintrag für Schlüssel.
- remove(K, V) – Löscht Eintrag nur falls Schlüssel auf angegebenen Wert mappt.
- keySet() – Gibt
Setaller Schlüssel zurück. - values() – Gibt
Collectionaller Werte zurück. - entrySet() – Gibt
Setaller Schlüssel/Wert-Mappings zurück.
Beispiele für Map-Implementierungen
1. HashMap-Beispiel
import java.util.Map; import java.util.HashMap; class Main { public static void main(String[] args) { // Map mit HashMap erstellen Map<String, Integer> numbers = new HashMap<>(); // Elemente in Map einfügen numbers.put("One", 1); numbers.put("Two", 2); System.out.println("Map: " + numbers); // Keys der Map abrufen System.out.println("Keys: " + numbers.keySet()); // Values der Map abrufen System.out.println("Values: " + numbers.values()); // Entries der Map abrufen System.out.println("Entries: " + numbers.entrySet()); // Element aus Map entfernen int value = numbers.remove("Two"); System.out.println("Removed Value: " + value); } }
Ausgabe
Map: {One=1, Two=2} Keys: [One, Two] Values: [1, 2] Entries: [One=1, Two=2] Removed Value: 2
Für mehr Details zu HashMap besuchen Sie Java HashMap.
2. TreeMap-Beispiel
import java.util.Map; import java.util.TreeMap; class Main { public static void main(String[] args) { // Map mit TreeMap erstellen Map<String, Integer> values = new TreeMap<>(); // Elemente in Map einfügen values.put("Second", 2); values.put("First", 1); System.out.println("Map using TreeMap: " + values); // Werte ersetzen values.replace("First", 11); values.replace("Second", 22); System.out.println("New Map: " + values); // Elemente aus Map entfernen int removedValue = values.remove("First"); System.out.println("Removed Value: " + removedValue); } }
Ausgabe
Map using TreeMap: {First=1, Second=2} New Map: {First=11, Second=22} Removed Value: 11
Für mehr Details zu TreeMap besuchen Sie Java TreeMap.
Java
- C#-Interfaces meistern: Definition, Implementierung und praktische Anwendungsfälle
- Java Operatoren meistern: Typen, Syntax und praktische Beispiele
- Java-Schnittstellen meistern: Konzepte, Implementierung und Best Practices
- Java Try-With-Resources meistern: Automatisches Ressourcenmanagement erklärt
- Java Annotations erklärt: Typen, Platzierung und praktische Beispiele
- Java NavigableSet Interface meistern: Navigation, Sortierung und praktische Beispiele
- Interface vs. Abstrakte Klasse in Java: Die richtige Abstraktion wählen
- Java Interfaces verstehen: Definitionen, Verwendung und Best Practices
- Java 9 Collection Factory Methods: Unveränderliche List, Set & Map kompakt erzeugen
- Java 9 Private Interface Methods: Bessere Kapselung & Code-Wiederverwendung