Das Java Collections Framework: Eine Einführung in Collection, List, Set, Map und die Stream-API

Image licensed by Ingram Image/adpic

Einleitung

Das Java Collections Framework (JCF) ist weit mehr als eine Sammlung nützlicher Klassen und Interfaces; es ist ein standardisiertes Framework, das den Umgang mit Datensammlungen in Java revolutioniert hat. Dieser Artikel führt euch durch die wichtigsten Bestandteile: Collection, List, Set, Map und die seit Java 8 existierende Stream-API.

Warum sind Collections wichtig?

Collections sind entscheidend für fast jede Art von Programmierung. Ob man Benutzerdaten, Texte, Bilder oder Koordinaten speichern möchte, Collections machen es einfacher und effizienter.

Collection Interface

Das Collection Interface ist die Basis für viele verschiedene Datensammlungen in Java. Es bietet grundlegende Methoden zum Hinzufügen, Entfernen und Überprüfen von Elementen.

// Collection Interface grundlegende Methoden
Collection collection = new ArrayList<>();
collection.add("Apple"); // Ein Element hinzufügen
collection.add("Banana");
collection.remove("Apple"); // Ein Element entfernen
boolean hasBanana = collection.contains("Banana"); // Überprüfung, ob ein Element vorhanden ist
int size = collection.size(); // Die Größe der Sammlung

List Interface

Das List Interface ermöglicht indexbasierten Zugriff und erlaubt auch doppelte Elemente. Du kannst Elemente hinzufügen, abrufen, ändern und vieles mehr.

// List Interface und indexbasierter Zugriff
List list = new ArrayList<>();
list.add("Apple");
list.add("Apple");
String firstItem = list.get(0); // Zugriff auf das erste Element
list.set(0, "Mango"); // Ersetzen eines Elements

Set Interface

Das Set Interface garantiert, dass alle Elemente einzigartig sind. Wenn du versuchst, ein bereits vorhandenes Element hinzuzufügen, wird es ignoriert.

// Set Interface und Uniqueness
Set set = new HashSet<>();
set.add("Apple");
set.add("Apple");
set.add("Banana");
boolean isAdded = set.add("Banana"); // Gibt false zurück, da "Banana" schon vorhanden ist

Map Interface

Das Map Interface verwendet Schlüssel-Wert-Paare für die Datenspeicherung. Mit dem Schlüssel kannst du schnell auf den dazugehörigen Wert zugreifen.

// Map Interface und Schlüssel-Wert-Paare
Map map = new HashMap<>();
map.put("Apple", 1);
map.put("Banana", 2);
int value = map.get("Apple"); // Zugriff auf Wert durch Schlüssel
map.remove("Apple"); // Entfernen eines Elements

DIE STREAM-API: DATENMANIPULATION LEICHT GEMACHT

Die Stream-API bietet eine elegante Möglichkeit, Daten zu manipulieren. Mit den Methoden der Stream-API kannst du Filtern, Sortieren und Umwandeln von Elementen leicht durchführen.

// Grundlegendes Stream-API Beispiel
List myList = Arrays.asList("Apple", "Banana", "Cherry");
myList.stream()
    .filter(fruit -> !"Banana".equals(fruit))
    .map(String::toUpperCase)
    .sorted()
    .forEach(System.out::println);

FAZIT

Das Java Collections Framework und die Stream-API sind mächtige Werkzeuge für die Datenmanipulation in Java. Sie sind flexibel, effizient und durch ihre standardisierte Natur leicht zu erlernen und zu verwenden.