假设我们在Java中有一个HashMap<String, Integer>
。
如何更新(递增)我找到的每个字符串键的整数值?
人们可以删除并重新输入键值对,但担心会有性能问题。
另一种方法是只插入新的键值对,旧的将被替换。
在后一种情况下,如果我想插入一个新键并且哈希码发生冲突,会发生什么?哈希表的正确行为是为它分配不同的位置,或者在当前桶中将其制成列表。
map.put(key, map.get(key) + 1);
应该没问题。它将更新现有映射的值。请注意,这使用了自动装箱。通过map.get(key)
我们获取相应键的值,然后您可以根据您的要求进行更新。在这里,我将值递增了1。