java list求和_Java 使用stream()将Map<String, List<String>>数据求和(sum)方法代码

本文介绍了如何使用Java的Stream API来对Map>中的数据进行求和操作。提供了两种实现方式:通过forEach和collect()方法。示例中展示了如何将Map的值转换为double并计算总和。" 125485961,13716366,B/S结构的Session机制详解,"['java', 'Web开发', '会话管理', 'HTTP协议', 'B/S结构']
摘要由CSDN通过智能技术生成

示例Map>的inputMap:{"product":["132377","2123232","312335678","423432","5215566"],"order":["3174252","1468453","1264543","35723112","235775645"]}

1、使用forEach实现Map resultSet = new HashMap<>();

inputMap.forEach((k, v) -> resultSet.put(k, v.stream()

.mapToDouble(s -> computeScore(s)).sum()));

2、使用collect()实现Map finalResult = inputMap.entrySet()

.stream()

.collect(Collectors.toMap(

Entry::getKey,

e -> e.getValue()

.stream()

.mapToDouble(str -> computeScore(str))

.sum()));

或Map finalResult = inputMap.entrySet()

.stream()

.map(entry -> new AbstractMap.SimpleEntry( // maps each key to a new

// Entry

entry.getKey(), // the same key

entry.getValue().stream()

.mapToDou

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值