【发布时间】:2014-03-07 12:44:04
【问题描述】:
我有我的代码,
HashMap<String, ArrayList<String>> map1 = new HashMap<String, ArrayList<String>>();
HashMap<String, ArrayList<String>> map2 = new HashMap<String, ArrayList<String>>();
ArrayList<String> t1= new ArrayList<String>();
t1.add("a");t1.add("a");
t1.add("a");t1.add("a");t1.add("a");
map1.put("1", t1);
System.out.print("Map1: "+map1.toString());
map2.putAll(map1);
System.out.print("Map2: "+map1.toString());
map2.get("1").set(0, "b");
System.out.print("Map1: "+map1.toString()+" | "+"Map2: "+map2.toString());
当改变 map2 中的值时,它会改变 map1 中的值。 请尽快帮我解决这个问题。
谢谢
编辑:我们在这里有 3 个答案。他们都接近正确答案。我选择了最佳答案。
【问题讨论】:
-
pass by reference ?
标签: java android map arraylist hashmap