Tiplendirilmiş stream toArray
Stream'leri metot referansıyla tiplendirilmiş dizilere dönüştürün.
Kod Karşılaştırması
✕ Pre-Streams
List<String> list = getNames();
String[] arr = new String[list.size()];
for (int i = 0; i < list.size(); i++) {
arr[i] = list.get(i);
}
✓ Java 8+
String[] arr = getNames().stream()
.filter(n -> n.length() > 3)
.toArray(String[]::new);
Bu kodda bir sorun mu gördünüz? Bize bildirin.
Modern yöntem neden daha iyi
Tip güvenli
Object[] dönüşümü yok — dizi türü doğrudur.
Zincirlenebilir
Herhangi bir stream hattının sonunda çalışır.
Kısa ve öz
Tek ifade elle yapılan döngünün yerini alır.
Eski Yaklaşım
Elle Dizi Kopyalama
Modern Yaklaşım
toArray(generator)
JDK'dan itibaren
8
Zorluk
Başlangıç
JDK Desteği
Tiplendirilmiş stream toArray
Mevcut
JDK 8'den itibaren geniş çapta kullanılabilir (Mart 2014)
Nasıl çalışır
toArray(IntFunction) metodu, bir stream'den düzgün tiplendirilmiş bir dizi oluşturur. Üretici (String[]::new), stream'e hangi türde dizi oluşturacağını söyler.
İlgili Belgeler