Java 如何将内容从以前的hashmap传输到新的hashmap?
我的问题是如何将项目从map转移到map2?我的代码对吗?很简单。使用参数化构造函数Java 如何将内容从以前的hashmap传输到新的hashmap?,java,hashmap,Java,Hashmap,我的问题是如何将项目从map转移到map2?我的代码对吗?很简单。使用参数化构造函数 HashMap<String,Integer> map= new HashMap<String,Integer>(); map.put("first",1); map.put("second",2); map.put("third",3); HashMap<String,Integer> map2= new HashMap<String,Integ
HashMap<String,Integer> map= new HashMap<String,Integer>();
map.put("first",1);
map.put("second",2);
map.put("third",3);
HashMap<String,Integer> map2= new HashMap<String,Integer>();
map2= map.clone();
它很简单。使用参数化构造函数
HashMap<String,Integer> map= new HashMap<String,Integer>();
map.put("first",1);
map.put("second",2);
map.put("third",3);
HashMap<String,Integer> map2= new HashMap<String,Integer>();
map2= map.clone();
您可以这样做:
HashMap<String,Integer> map2= new HashMap<String,Integer>(map);
或
请注意,在这两种方法中,键和值不是重复的,而是由两个HashMap引用。您可以这样做:
HashMap<String,Integer> map2= new HashMap<String,Integer>(map);
或
请注意,在这两种方法中,键和值都不是重复的,而只是由两个HashMap引用。如果您正在查找上一个map的深层副本,请使用复制构造函数,克隆是此HashMap实例的浅层副本:键和值本身不会被克隆
如果您想要上一个映射的浅拷贝,可以使用将映射引用传递给新的映射构造函数,而不是克隆方法
克隆方法查找有麻烦
如果你读过我书中关于克隆的内容,尤其是如果你
从字里行间,你会知道我认为克隆人是深深的
破碎的[…]很遗憾Cloneable坏了,但它确实发生了
如果您正在查找上一个map use copy构造函数的深层副本,则clone是此HashMap实例的浅层副本:不会克隆键和值本身
如果您想要上一个映射的浅拷贝,可以使用将映射引用传递给新的映射构造函数,而不是克隆方法
克隆方法查找有麻烦
如果你读过我书中关于克隆的内容,尤其是如果你
从字里行间,你会知道我认为克隆人是深深的
破碎的[…]很遗憾Cloneable坏了,但它确实发生了
在完美世界地图中,map2=…-最好尽可能使用接口。在完美的世界地图中,map2=…-最好尽可能使用接口。
HashMap<String,Integer> map2= new HashMap<>(map);