关于HashMap的深复制与浅复制

Java是不支持HashMap的深复制,如果想将一个HashMap中的元素深复制到另一个HashMap中只能一个实体一个实体复制过去。比如

public static HashMap<Integer, List<MySpecialClass>> copy(
    HashMap<Integer, List<MySpecialClass>> original)
{
    HashMap<Integer, List<MySpecialClass>> copy = new HashMap<Integer, List<MySpecialClass>>();
    for (Map.Entry<Integer, List<MySpecialClass>> entry : original.entrySet())
    {
        copy.put(entry.getKey(),
           // Or whatever List implementation you'd like here.
           new ArrayList<MySpecialClass>(entry.getValue()));
    }
    return copy;
}

参考https://stackoverflow.com/questions/28288546/how-to-copy-hashmap-not-shallow-copy-in-java/28288729

阅读更多
文章标签: Java
想对作者说点什么? 我来说一句

java的深复制浅复制

2015年08月17日 10KB 下载

没有更多推荐了,返回首页

不良信息举报

关于HashMap的深复制与浅复制

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭