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

  • alexis gillis

    alexis gilli

    23 HAZİRAN 2011
  • HuskyStarcraft

    HuskyStarcra

    4 HAZİRAN 2009
  • TrenchTech Computer Repair Tutorials

    TrenchTech C

    19 EYLÜL 2014