Stream 分组,BigDecimal求和汇总

                // 分组
		Map<String, List<ChartDataView>> map = data.stream().map(t -> {
			ChartDataView c = new ChartDataView();
			c.setDimension1(t.getDimension10());
			c.setTarget1(t.getTarget7());
			return c;
		}).collect(Collectors.groupingBy(ChartDataView::getDimension1));
		// 汇总
		for (String s : map.keySet()) {
			List<ChartDataView> l = map.get(s);
			ChartDataView resultItem = new ChartDataView();
			BigDecimal sum = l.stream().map(e -> e.getTarget1()).reduce(BigDecimal.ZERO, BigDecimal::add);
			resultItem.setDimension1(s);
			resultItem.setTarget1(sum);
			res.add(resultItem);
		}
posted @   阿灿呀  阅读(1077)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示