Java SortedMap-Interface: Überblick, Methoden und TreeMap-Implementierung
Java SortedMap-Interface
In diesem Tutorial erkunden wir das Java SortedMap-Interface, seine Schlüsselmethoden und die Nutzung mit der TreeMap-Klasse.
Das Java SortedMap-Interface, Teil des Collections Frameworks, garantiert, dass Map-Schlüssel in sortierter Reihenfolge gespeichert werden. Es erweitert das Basis-Map-Interface.

Klasse, die SortedMap implementiert
Da SortedMap ein Interface ist, können Sie es nicht direkt instanziieren. Die konkrete Implementierung vom JDK ist die TreeMap-Klasse, die Einträge standardmäßig in aufsteigender Schlüsselreihenfolge hält.

SortedMap verwenden
Um mit SortedMap zu arbeiten, importieren Sie zuerst das Interface:
import java.util.SortedMap; import java.util.TreeMap;
Dann erstellen Sie eine Instanz mit TreeMap:
SortedMap<Key, Value> numbers = new TreeMap<>();
In diesem Beispiel speichert numbers Schlüssel in natürlicher aufsteigender Reihenfolge. Sie können auch einen benutzerdefinierten Comparator übergeben, falls Sie eine andere Reihenfolge benötigen.
Definitionen:
- Key – einzigartiger Identifikator, der auf einen Wert mappt.
- Value – die mit einem Schlüssel assoziierten Daten.
Der no-argument-Konstruktor bedeutet, dass die Map nach der natürlichen Ordnung des Schlüsseltyps sortiert wird.
Schlüsselmethoden von SortedMap
Neben allen von Map geerbten Methoden fügt SortedMap folgende Operationen hinzu:
- comparator() – gibt den
Comparatorfür Schlüsselordnung zurück, odernullfalls natürliche Ordnung gilt. - firstKey() – ruft den kleinsten Schlüssel in der Map ab.
- lastKey() – ruft den größten Schlüssel ab.
- headMap(K toKey) – gibt View der Map zurück, deren Keys strikt kleiner als
toKeysind. - tailMap(K fromKey) – gibt View der Map zurück, deren Keys größer oder gleich
fromKeysind. - subMap(K fromKey, K toKey) – gibt View der Map zurück, deren Keys von
fromKey(inklusiv) bistoKey(exklusiv) reichen.
Für tiefere Details siehe die Java SortedMap Dokumentation.
TreeMap: Konkrete Implementierung von SortedMap
import java.util.SortedMap; import java.util.TreeMap; public class Main { public static void main(String[] args) { // SortedMap mit TreeMap erstellen SortedMap<String, Integer> numbers = new TreeMap<>(); // Elemente in Map einfügen numbers.put("Two", 2); numbers.put("One", 1); System.out.println("SortedMap: " + numbers); // Ersten und letzten Schlüssel abrufen System.out.println("First Key: " + numbers.firstKey()); System.out.println("Last Key: " + numbers.lastKey()); // Eintrag nach Schlüssel entfernen int removed = numbers.remove("One"); System.out.println("Removed Value: " + removed); } }
Ausgabe
SortedMap: {One=1, Two=2} First Key: One Last Key: Two Removed Value: 1
Dieses Beispiel demonstriert, wie sich SortedMap verhält, wenn es mit TreeMap genutzt wird. Für mehr zu TreeMap siehe die Java TreeMap Dokumentation.
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