Streams Experte

Gatherers für benutzerdefinierte Zwischen-Stream-Operationen verwenden.

✕ Java 8
// Sliding window: manual implementation
List<List<T>> windows = new ArrayList<>();
for (int i = 0; i <= list.size()-3; i++) {
    windows.add(
        list.subList(i, i + 3));
}
✓ Java 24+
var windows = stream
    .gather(
        Gatherers.windowSliding(3)
    )
    .toList();
Problem mit diesem Code entdeckt? Sag uns Bescheid.
🧩

Kombinierbar

Gatherers lassen sich mit anderen Stream-Operationen kombinieren.

📦

Eingebaute Operationen

windowFixed, windowSliding, fold, scan sofort verfügbar.

🔧

Erweiterbar

Eigene Gatherers für beliebige Zwischentransformationen schreiben.

Alter Ansatz
Benutzerdefinierter Collector
Moderner Ansatz
gather()
Seit JDK
24
Schwierigkeitsgrad
Experte
Stream-Gatherers
Verfügbar

In JDK 24 finalisiert (JEP 485, März 2025).

Gatherers sind eine neue Zwischen-Stream-Operation, die komplexe Transformationen wie gleitende Fenster, Gruppen fester Größe und Scan-Operationen ausdrücken kann, die mit Standard-Stream-Operationen nicht möglich waren.

Teilen 𝕏 🦋 in