Stream toplayıcıları
Özel ara akış işlemleri için toplayıcılar kullanın.
Kod Karşılaştırması
✕ 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();
Bu kodda bir sorun mu gördünüz? Bize bildirin.
Modern yöntem neden daha iyi
Birleştirilebilir
Toplayıcılar diğer akış işlemleriyle birleştirilebilir.
Yerleşik işlemler
windowFixed, windowSliding, fold ve scan kullanıma hazır gelir.
Genişletilebilir
Herhangi bir ara dönüşüm için özel toplayıcılar yazılabilir.
Eski Yaklaşım
Özel Collector
Modern Yaklaşım
gather()
JDK'dan itibaren
24
Zorluk
İleri
JDK Desteği
Stream toplayıcıları
Mevcut
JDK 24'te tamamlandı (JEP 485, Mart 2025).
Nasıl çalışır
Toplayıcılar (Gatherers), kayan pencereler, sabit boyutlu gruplar ve standart akış işlemleriyle mümkün olmayan tarama işlemleri gibi karmaşık dönüşümleri ifade edebilen yeni bir ara akış işlemidir.
İlgili Belgeler