系统运维系列 之List实现深拷贝(java应用)
Posted 琅晓琳
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统运维系列 之List实现深拷贝(java应用)相关的知识,希望对你有一定的参考价值。
浅拷贝调用方法:
遍历循环复制:
List<String> destList=new ArrayList<String>(srcList.size());
for(String p : srcList)
destList.add(p);
使用list.addAll()方法:
List<String> destList=new ArrayList<String>();
destList.addAll(srcList);
深拷贝调用方法:
调用:
List<String> destList=deepCopy(srcList);
序列化实现方法:
public static <T> List<T> deepCopy(List<T> src)
try
ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
ObjectOutputStream out = new ObjectOutputStream(byteOut);
out.writeObject(src);
ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray());
ObjectInputStream in = new ObjectInputStream(byteIn);
@SuppressWarnings("unchecked")
List<T> dest = (List<T>) in.readObject();
return dest;
catch (IOException e)
e.printStackTrace();
catch (ClassNotFoundException e)
e.printStackTrace();
return null;
原deepCopy方法地址:
(1) https://www.pianshen.com/article/17271053790/
参考地址:
(1) https://www.cnblogs.com/qingzhongcao/p/14681748.html
(2) https://blog.csdn.net/xmtblog/article/details/116868273
(3) https://blog.csdn.net/zbw125/article/details/116270576? utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_title~default-0.pc_relevant_default&spm=1001.2101.3001.4242.1&utm_relevant_index= 3
以上是关于系统运维系列 之List实现深拷贝(java应用)的主要内容,如果未能解决你的问题,请参考以下文章
系统运维系列 之实现servlet上传下载文件(java应用)