map中是传值还是引用
我有个工程,大量的从一个Map中取出String,再存入另两个Map,有点担心内存。
f(Map map1,Map map2,Map map3){
String s = (String)map1.get("a"); //取出来的s是值还是引用?
map2.put("a",s); //存入的s是值还是引用?
map3.put(s,"a"); //存入的s是值还是引用?
}
我理解,java传的都是引用,也就是3个map中用的都是同一个s,不会拷贝3份。
想确认一下。
[解决办法]