如何克隆ArrayList并克隆其内容?

问题:

如何克隆一个ArrayList,并用Java克隆它的项目?
例如我有:

ArrayList<Dog> dogs = getDogs();
ArrayList<Dog> clonedList = ....something to do with dogs....

我希望clonedList中的对象与狗列表中的对象不同。

回答:

您将需要对这些项目进行迭代,并逐个克隆,随时随地将克隆放在结果数组中。

public static List<Dog> cloneList(List<Dog> list) {
    List<Dog> clone = new ArrayList<Dog>(list.size());
    for (Dog item : list) clone.add(item.clone());
    return clone;
}

为了工作,显然,你必须得到你的Dog对象来实现Cloneable接口和clone()方法。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: How to clone ArrayList and also clone its contents?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

87 − = 85