动态的在每月月底插入一条小计,年底插入一条合计
- 需求:列表展示年度数据,每月月末小计数据,年底合计数据
- 思路:在月份(年份)切换的时候对已遍历的当月(当年)数据进行累计;定义两个变量month,year作为标志判断月份年份
- 使用stream的聚合操作
- 实现:
if(相同月份的数据存入list){
......
}else{
//切换月份判断
if(判断是哪个月份的数据){
//给变量month、year赋值
//传过来的第一条数据直接存list
}else{
//累计
BigDecimal summenoy = list.stream()
.map(Dto::getMoney)//取要进行计算的字段
.reduce(BigDecimal.ZERO,BigDecimal::add);//累计计算
//把结果存入list
...
//重新给变量赋值
...
//切换月份的第一条数据存入list
...
}
}