SORU
30 HAZİRAN 2011, PERŞEMBE


java arraylist kopyala

Boyutu 10 ArrayList l1 var. Yeni liste referans türü l2-l1 biçerim. L1 ve l2 noktasına aynı arraylist nesnesi olacak? Ya arraylist nesnesinin bir kopyasını l2 atanır. L2 referans Kullanarak çünkü, eğer ben listeyi güncellemek nesne, l1 başvuru türü değişiklikleri de yansıtır.

örn.

List<Integer> l1 = new ArrayList<Integer>();
for(int i=1;i<=10;i  )
   l1.add(i);
List l2 = l1;
l2.clear();

Yeni bir referans değişkeni için nesne listesi dışında 2 liste nesneleri oluştururken, eski ve yeni gelen koleksiyonları üzerinde kopyalama yaparken bir kopyasını atamak için başka bir yol var mı?

Şimdiden teşekkürler

CEVAP
30 HAZİRAN 2011, PERŞEMBE


Evet, atama sadece kopyalardeğerl1 başvuru) l2. Aynı nesne sevk edecektir.

Sığ bir kopyasını oluşturmak oldukça kolay olsa

List<Integer> newList = new ArrayList<Integer>(oldList);

(Sadece bir örnek.)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GoProTutorials

    GoProTutoria

    18 NİSAN 2011
  • newport83

    newport83

    19 HAZİRAN 2006
  • TV and Lust

    TV and Lust

    26 HAZİRAN 2006