关于java的ArrayList问题
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Elem> aviLabel = new ArrayList<Elem>();
Elem e = new Elem();
e.setLabelName("ddd");
Elem e1 = new Elem();
e1.setLabelName("e222");
Elem e2 = new Elem();
e2.setLabelName("e");
e.getChildren().add(e2);
e.getChildren().add(e1);
aviLabel.add(e);
e.getChildren().remove(0);
e.toString();
}
Elem的定义
public class Elem {
private String labelName ;
List<Elem> children = new ArrayList<Elem>();
public Elem() {
// TODO Auto-generated constructor stub
}
。。。。。
}
在main执行倒数第二句e.getChildren().remove(0);时,发现aviLabel列表中的e的第一个孩子也被删除了,我想在对e操作时,不改变aviLabel中已经存储e的值,这个该怎么弄。。。
[解决办法]