如何复制list
2015-11-07 17:03
274 查看
在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);注意括号里的内容.
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);注意括号里的内容.
相关文章推荐
- Android的init过程(二):初始化语言(init.rc)解析
- 不用root如何查看手机wifi密码
- 多线程指定ConcurrentHashMap定义了初始容量抛java.lang.OutOfMemoryError: Java heap space
- 虚拟键码表
- PowerShell实战 第五回 创建HAB
- 左右手系,坐标变换
- C# EXCEL表格处理相关函数
- 求x, 使x的平方为一个各位数字互不相同的9位数
- mysql数据库忘记密码时如何修改(本地)
- 关于php的array_diff和array_diff_assoc的使用总结
- Android的init过程详解(一)
- C++API设计
- hdu5536Chip Factory dfs+二分
- 大量excel文件批量转换成印刷pdf文件:两个小表格自动合成一页
- client sent invalid header line: "X-Hts_user: true" while reading client request headers
- 在Filter中获取web.xml中配置的参数
- mysql 最大连接数设置
- python之函数用法any()
- UIAlertController的使用
- Linux内核模块编程-HelloWorld