→ 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
  • E muss Interface Comparable<E> und Methode compareTo(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