我想知道如何在键匹配时有效地减去两个映射的值。目前我有 2 HashMap<String,Integer>
并这样做:
for (String key: map1.keySet()){
if (map2.keySet().contains(key)){
//subtract
}
}
有更好的方法吗?
最佳答案
从理论上讲,这几乎是最快的,除非你能以某种方式以比 O(n) 更快的方式找到两个 HashMap
之间的匹配键。
- 遍历第一个 map 的
keySet()
中的键 - O(n)- 查看 key 是否在其他 map 中 - O(1)
- 做你的操作 - O(1)
关于java - 键减两个HashMap中值的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5792235/