这是代码 一个数据库的list 一个24小时的list:
外层循环开始
定义 boolean flag =false
--内层循环
if hour == hour
flag =true;
--内层结束
if flag ----即当前小时有price
else ---- 找不到对应的hour price=0
Map<Integer,List<Price>> priceMap = priceList.stream().collect(Collectors.groupingBy(p -> a.getH()));
for(int i = 1; i < 24;i ++){
List<Price> prices = priceMap.get(i);
if(CollectionUtils.isNotEmpty(prices )){
vo.getH().add(i);
vo.getPrice().addAll(prices);
}else{
vo.getH().add(i);
vo.getPrice().addAll(0);
}
}