1 个回答

你两次添加到list中的都是同一个temp
也就是说temp中有两个数据, [0:0]和[1:1], 然后你把这个temp对象两次加到list中了。
如果你想要有不同的结果,代码应该改成:

List<HashMap> list = new ArrayList<HashMap>();
HashMap temp = null;
for (int i = 0; i < 2; i++) {
    temp = new HashMap(); // 每次都创建一个新的HashMap对象
    temp.put(i, i);
    list.add(temp);
}
System.out.println(list);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题