当前位置: 首页 > 知识库问答 >
问题:

如果键匹配,则为hashmap[duplicate]列表添加值

屈浩波
2023-03-14

我有一个hashmap列表。所有值都是整数。我想根据键匹配添加所有值。

假设我有一张地图,比如:

Map<String, Integer> map1 = new HashMapMap<String, Integer>();
map1.put("RE", 14); 
map1.put("SE", 15); 
map1.put("DE", 13);

Map<String, Integer> map2 = new HashMapMap<String, Integer>(); 
map2.put("RE", 11); 
map2.put("SE", 10); 
map2.put("DE", 11);

Map<String, Integer> map3 = new HashMapMap<String, Integer>(); 
map3.put("RE", 1); 
map3.put("SE", 2); 


Map<String, Integer> map4 = new HashMapMap<String, Integer>(); 
map4.put("RE", 6); 
map4.put("SE", 7); 
map4.put("DE", 8);

现在我需要一张地图作为输出,比如

Map<String, Integer> output= new HashMapMap<String, Integer>(); 
output.put("RE", 32); 
output.put("SE", 24); 
output.put("DE", 32);

共有1个答案

高宇定
2023-03-14

如果您有一个hashmap列表,那么您需要迭代每个列表,并将值添加/更新到您的输出HashMap。像这样:

public static void main(String[] args) {
    HashMap<String, Integer> map1 = new HashMap<>();
    HashMap<String, Integer> output = new HashMap<>();
    for (Map.Entry<String, Integer> mapItem : map1.entrySet()) {
        if (!output.containsKey(mapItem.getKey())) {
            output.put(mapItem.getKey(), mapItem.getValue());
        } else {
            output.put(mapItem.getKey(), output.get(mapItem.getKey()) + mapItem.getValue());
        }
    }
}
 类似资料:
  • 我在一个更大的脚本中有一段代码,它只是根据匹配将值分配给“i”。这个想法是,如果找到输入的值,我希望它给出匹配值,如果没有,则为0。如果它是0,我可以然后退出子消息给用户。然而,任何时候匹配找到一个空值,它只是杀死子,而不是作为我介绍的iferror的一部分来处理。我尝试过各种检查方式(例如使用iif(isfalse)),但似乎都不起作用。 导致问题的代码如下所示: 我是一个模糊的整数 用户名是一

  • 我的表中有三列 键名、数字、数据 数据由大量重复的条目组成。如果重复"KeyName"和"Data",我需要从表中的每个重复条目中删除1行。如何实现这一点SQL查询。

  • 问题内容: 如果要花费10秒钟以上的时间才能取消操作? 我正在使用巨大的正则表达式来匹配特定的文本,有时可能有用,有时可能会失败… 正则表达式: 工作示例:https://regex101.com/r/kU6rS5/1 所以..如果要花费10秒以上,我想取消操作。可能吗?我找不到与沙发有关的任何东西 谢谢。 问题答案: 您可以生成一个进行正则表达式匹配的子进程,并在10秒钟内未完成将其杀死。可能有

  • 我正在尝试编写一个pact消费者测试来匹配下面的响应。 每个schedule对象由与一个简单正则表达式匹配的未知数量的键组成。但是我没有看到一种方法可以使用正则表达式来匹配键,同时将值映射到一个简单的布尔值。 但这需要一个新的对象作为值,而不是一个基元类型。 有没有办法在pact-jvm中指定映射到基元值的不精确键?

  • 问题内容: 我正在制作一个键值解析器,其中输入字符串采用的形式。键可以包含字符,并且和值可以包含任何字符,但,,和需要用反斜杠前缀。逗号用于分隔键值对,但在最后一对之后不需要。 到目前为止,我已经可以匹配大多数键和值,但是很显然它将不能处理多于一对的字符或者任何“控制”字符都不能转义。似乎匹配所有转义字符,但不匹配任何“正常”字符。 有没有办法检查逗号分隔并匹配所有转义的“控制”字符以及普通字符?

  • 我是网络开发新手,所以这可能是非常基本的。如果datainfo prop变量不是空的,我想向div标记添加一个数据属性 但是现在,如果datavalue是空的,则data属性会添加一个空值。相反,我希望它根本不会出现在div标签中。 我可以在JSX子句中添加整个内容吗?