gpt4 book ai didi

当我不希望 Java Hashmap 更新时

转载 作者:行者123 更新时间:2023-12-01 17:56:23 26 4
gpt4 key购买 nike

对于为什么我的 HashMap 正在更新有点困惑。作为示例,我有以下 HashMap :

Map<String, Integer> firstMap = new HashMap<String, Integer>();

Map<Integer, Map<String, Integer>> finalMap = new HashMap<Integer, Map<String, Integer>>();

现在,当我运行这个时:

firstMap.put("Jason", 2);
finalMap.put(1, firstMap);

firstMap.put("Jason", 15);
finalMap.put(2, firstMap);
System.out.println(finalMap);

我明白了:

{1={Jason=15}, 2={Jason=15}}

为什么我不能得到这个呢?这就是我想要的。

{1={Jason=2}, 2={Jason=15}}

非常感谢您的帮助,谢谢!

最佳答案

您将需要创建 anotherFirstMap 对象(另一个 HashMap )。不是相同的 HashMap 。 SameHashMap 肯定会更新值

firstMap.put("Jason", 2);
finalMap.put(1, firstMap);

anotherFirstMap.put("Jason", 15);
finalMap.put(2, anotherFirstMap);
System.out.println(finalMap);

关于当我不希望 Java Hashmap 更新时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44466427/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com