在java中,对list的操作会直接影响和它有关系任何其他变量。分为两种情况
1.
如:有两个list
List<object> a = new ArralyList<Object>();
List<object> b = new ArralyList<Object>();
如果简单的进行a=b,那么在稍后的操作中,对b进行任何操作,a都会受影响,如执行b.clear(),那么a也会被clear掉。
2.
存在两个list :
List<object> a = new ArralyList<Object>();
List<List> b = new ArralyList<List>();
执行b.add(a)后,继续执行a.clear(),此时,b中的a也会被clear掉。
那么如何深度复制一个list?
两种方法:
1.遍历b,将b的每一个元素逐个添加到a中
2.List<object> b = new ArralyList<Object>(b);注意括号里的内容.