作者:mobiledu2502891853 | 来源:互联网 | 2022-12-14 15:20
我有一个LinkedHashMap,我有两个重复的键及其对应的值,我需要知道如何将这些值汇总为一个键.目前,他消除了旧的重复值并放入了新的重复值
这是我的地图
static Map costByDuration = new LinkedHashMap<>();
这是我放置值的地方(call_from可以是912345678并且值为10,然后是来自912345678的另一个调用并且值为20),然后我希望912345678具有值30而不是仅保留一个.
costByDuration.put(call_from, toPay);
Ousmane D...
7
我将创建一个方法如下:
public void put(String key, Double value){
costByDuration.merge(key,value , Double::sum);
}
用例将是:
put(call_from, toPay);
put(anotherKey, anotherValue);
...
...
此解决方案在内部使用该merge
方法,该方法基本上表示如果指定的键尚未与值关联或与null关联,则将其与给定的非空值相关联.否则,将相关值替换为给定重映射函数的结果.
1> Ousmane D...:
我将创建一个方法如下:
public void put(String key, Double value){
costByDuration.merge(key,value , Double::sum);
}
用例将是:
put(call_from, toPay);
put(anotherKey, anotherValue);
...
...
此解决方案在内部使用该merge
方法,该方法基本上表示如果指定的键尚未与值关联或与null关联,则将其与给定的非空值相关联.否则,将相关值替换为给定重映射函数的结果.