→ Slides 14_Collections.pdf
java.util.Collections
Arten
Collection
- keine Schlüssel, nur Werte
Liste
- keine Schlüssel, nur Werte
- Geordnet (0-basiert)
Linked List
- Doppelt verkettet
- hat Index
- Stack und Queue
ArrayList
Nutzung
Subtyping
Achtung
- beim Hinzufügen oder Löschen von Elementen ändern sich die Indizes
Compare To
Sortieren
- benötigt Comparable
Sets
- keine Schlüssel, nur Werte
- Keine Duplikate
- Nicht geordnet, keine Reihenfolge, kein Index-basierter Zugriff
public interface Set<E> extends Collection<E> {
public void add(E element);
public boolean remove(Object o);
public boolean cotains(E element);
public boolean isEmpty();
...
}Treeset
- sortiert
- keine Duplikate
Emuss InterfaceComparable<E>und MethodecompareTo(E)implementieren
Hashset
- keine Reihenfolge
- keine doppelten Elemente
- einfacher zu Implementieren, wenn man nur schauen will ob ein Element vorkommt
Beispiel Priority Queue
Map Interface
- Key-Value-Paare
- jeder Key ist eindeutig, Values dürfen sich wiederholen
- Ungeordnet
Beispiel
Map<String, Integer> age = new HashMap<>();
age.put("Alice", 20);
age.put("Bob", 22); .getOrDefault("test", -1);Implementation
Comparator
Iteration