Koleksiyonları değişmez biçimde kopyalama
Herhangi bir koleksiyonun değişmez kopyasını tek çağrıyla oluşturun.
Kod Karşılaştırması
✕ Java 8
List<String> copy =
Collections.unmodifiableList(
new ArrayList<>(original)
);
✓ Java 10+
List<String> copy =
List.copyOf(original);
Bu kodda bir sorun mu gördünüz? Bize bildirin.
Modern yöntem neden daha iyi
Akıllı kopyalama
Kaynak zaten değişmezse kopyalamayı atlar.
Tek çağrı
Elle ArrayList oluşturma ve sarmalama gerekmez.
Savunmacı kopya
Orijinaldeki değişiklikler kopyayı etkilemez.
Eski Yaklaşım
Elle Kopyalama + Sarmalama
Modern Yaklaşım
List.copyOf()
JDK'dan itibaren
10
Zorluk
Başlangıç
JDK Desteği
Koleksiyonları değişmez biçimde kopyalama
Mevcut
JDK 10'dan itibaren geniş çapta kullanılabilir (Mart 2018)
Nasıl çalışır
List.copyOf(), Set.copyOf() ve Map.copyOf() mevcut koleksiyonların değişmez anlık görüntülerini oluşturur. Kaynak zaten değişmez bir koleksiyonsa kopyalama yapılmaz.
İlgili Belgeler