3 NİSAN 2009, Cuma
Nasıl ArrayList klon ve de içeriğini klonlamak için?
Nasıl bir ArrayList kopyalayabilir miyim ve ayrıca Java 1.5 öğeleri klon?
Örneğin:
ArrayList<Dog> dogs = getDogs();
ArrayList<Dog> clonedList = ....something to do with dogs....
Ve clonedList nesneleri köpekler listesinde aynı değildir bu beklenirdi.
CEVAP
3 NİSAN 2009, Cuma
Ben, şahsen, Köpek için bir kurucu ekleyin:
class Dog
{
public Dog()
{ ... } // Regular constructor
public Dog(Dog dog) {
// Copy all the fields of Dog.
}
}
O zaman sadece yineleme Varkhan cevabı gösterildiği gibi):
public static List<Dog> cloneList(List<Dog> dogList) {
List<Dog> clonedList = new ArrayList<Dog>(dogList.size());
for (Dog dog : dogList) {
clonedList.add(new Dog(dog));
}
return clonedList;
}
Etrafında Java kırık Cloneable şeyler etmene gerek yok bu avantajı buluyorum. Ayrıca Java koleksiyonları kopyalayın o şekilde uyuyor.
Başka bir seçenek kendi İCloneable arayüzü yazmak ve kullanmak olabilir. Bu şekilde klonlama için genel bir yöntem yazabilirsiniz.
Bunu Paylaş:
Nasıl div içeriğini daha büyük değil y...
Nasıl bir dosyanın içeriğini bir Java ...
Nasıl css ile altına bir div içeriğini...
Nasıl klon ya da Python içinde bir lis...
Nasıl bir git repo (klon değil) dosyal...