Collections Orta

Değiştirilemez collector'lar

stream.toList() ile doğrudan değiştirilemez bir listeye toplayın.

✕ Java 8
List<String> list = stream.collect(
    Collectors.collectingAndThen(
        Collectors.toList(),
        Collections::unmodifiableList
    )
);
✓ Java 16+
List<String> list = stream.toList();
Bu kodda bir sorun mu gördünüz? Bize bildirin.
📏

En kısa yol

stream.toList() hiç collect() veya Collectors import gerektirmez.

🔒

Değişmez

Sonuç değiştirilemez — yanlışlıkla mutasyon olmaz.

📖

Okunabilir

Herhangi bir stream hattının terminal adımı olarak doğal okunur.

Eski Yaklaşım
collectingAndThen
Modern Yaklaşım
stream.toList()
JDK'dan itibaren
16
Zorluk
Orta
Değiştirilemez collector'lar
Mevcut

JDK 16'dan itibaren geniş çapta kullanılabilir (Mart 2021)

Java 10, ayrıntılı collectingAndThen sarmalayıcısının yerini almak için toUnmodifiableList(), toUnmodifiableSet() ve toUnmodifiableMap() ekledi. Listeler için Java 16'nın stream.toList() yöntemi daha da basit bir alternatif sunar — hiç collect() çağrısına gerek yoktur. Diğer koleksiyon türleri için toUnmodifiableSet() ve toUnmodifiableMap() kullanın.

Paylaş 𝕏 🦋 in