gpt4 book ai didi

java - java - 如何将Java hashMap内容的全部放在另一个上,但不替换现有的键和值?

转载 作者:IT老高 更新时间:2023-10-28 11:48:12 25 4
gpt4 key购买 nike

我需要将一个 A HashMap 中的所有键和值复制到另一个 B 上,而不是替换现有的键和值。

最好的方法是什么?

我想改为迭代 keySet 并检查它是否存在,我会

Map temp = new HashMap(); // generic later
temp.putAll(Amap);
A.clear();
A.putAll(Bmap);
A.putAll(temp);

最佳答案

看起来你愿意创建一个临时的Map,所以我会这样做:

Map tmp = new HashMap(patch);
tmp.keySet().removeAll(target.keySet());
target.putAll(tmp);

这里,patch 是您要添加到 target map 的 map 。

感谢 Louis Wasserman,这是一个利用 Java 8 中新方法的版本:

patch.forEach(target::putIfAbsent);

关于java - java - 如何将Java hashMap内容的全部放在另一个上,但不替换现有的键和值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7194522/

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