Collections Einsteiger

Collection-Massenoperationen statt Mutationsschleifen

removeIf(), replaceAll() und List.sort() für direkte Transformationen von Collections verwenden.

✕ Iterator mutation loop
for (Iterator<Order> it = orders.iterator(); it.hasNext();) {
    if (it.next().cancelled()) {
        it.remove();
    }
}
✓ Java 8+
orders.removeIf(Order::cancelled);
Problem mit diesem Code entdeckt? Sag uns Bescheid.
👁

Klare Absicht

Die Operation beschreibt, was geändert wird, und nicht, wie darüber iteriert wird.

🐛

Sicherere Mutation

Vermeidet manuelle Regeln für das Entfernen per Iterator.

⚡

Weniger Code

Häufige Transformationen werden zu einem einzigen Ausdruck.

Alter Ansatz
Manuelles Entfernen per Iterator
Moderner Ansatz
Collection.removeIf()
Seit JDK
8
Schwierigkeitsgrad
Einsteiger
Collection-Massenoperationen statt Mutationsschleifen
Verfügbar

Verfügbar seit JDK 8 (März 2014)

Moderne Collection-Interfaces stellen häufige Mutationen direkt bereit. Methoden wie removeIf(), replaceAll() und List.sort() ersetzen Schleifen mit aufwendiger Kontrolllogik durch Operationen, die die beabsichtigte Transformation ausdrücken.