如何在java中添加和合并同一映射的值

如何在java中添加和合并同一映射的值,java,spring,Java,Spring,嗨,我在添加地图的整数值和合并地图的字符串值时遇到问题。例如,我想做的是,我有以下代码: List<Object[]> results = customerRepository.findByAddress(); for(Object[] object : results) { Map<Object, Object> location = new LinkedHashMap<>(); location.put("Region"

嗨,我在添加地图的整数值和合并地图的字符串值时遇到问题。例如,我想做的是,我有以下代码:

List<Object[]> results = customerRepository.findByAddress();

for(Object[] object : results) {
    Map<Object, Object> location = new LinkedHashMap<>();
    location.put("Region", object[0]);
    location.put("Tally", object[1]);
    for(String obj : regionOne) {
        if(object[0].equals(obj)) {
            location.replace("Region", "Region I");
        }
    }
}
我想要的是加上Tally的值,所以2+2=4 并将Pasig和Taguig合并并替换为区域I

所以结果应该是

 Region: Region I
 Tally: 4

我已经查看了合并函数,但它似乎不是我想要的,或者我只是没有完全理解它。提前谢谢。

如果您使用的是Java 8或更大版本,Map::ComputeiPresent可能对您的问题有用


顺便说一句,我认为在提问时最好将业务部分与代码分开。

什么是
regionOne
?为什么要使用
对象
?@Thrary Wombat regionOne是一个数组,就像你需要使用字符串一样,不是ObjectsOkay但是你知道我该如何添加tally吗?哦,谢谢你的建议,我现在正在研究计算方法,在我测试它之后,我会回到这个位置。计算(“tally”,(k,oldVal)->(oldVal==null?0:oldVal+“+”+对象[1]);这会像预期的那样工作吗?location.compute(“Tally”,(k,oldVal)->(oldVal==null?0:oldVal+Integer.valueof(object[1]);你可能想要这个。谢谢它的工作,我写它就像这个位置。计算(“Tally”,(k,oldVal)->(oldVal==null?0:((BigInteger)oldVal)。添加((BigInteger)对象[1]);
 Region: Region I
 Tally: 4