public static void MapClearTest()
{
List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
Map<String,Object> map = new HashMap<String,Object>();
for(int i=0;i<3;i++)
{
map.put("key1", "value1");
map.put("key2", "value2");
list.add(map);
map.clear();
}
System.out.println("listSize: "+list.size());
for(Map<String,Object> mp:list)
{
System.out.println(mp.get("key1"));
System.out.println(mp.get("key2"));
System.out.println("--------- ");
}
}
// ==== 运行结果:
/*
listSize: 3
null
null
---------
null
null
---------
null
null
---------
*/
/*
放进list 的应该是对象,第一个 for 循环 的 map.clear(); 方法
会把刚才放到list 里面 的map对象 清空。所以每次放进去的对象
都为 null
不用 mp.clear(); 把 Map<String,Object> map = new HashMap<String,Object>();
放到第一个 for 循环里面就行了
*/