List<Map<String, Object>> lpsgjdList = syDkKfslyxxManager.getAlpsgjdQryData(syDkKfslyxxVo);
//根据某个key进行分组
Map<Object, List<Map<String, Object>>> dongh = lpsgjdList.stream().collect(
Collectors.groupingBy(e -> e.get("dongh")));
//对上面的map进行遍历
for (Map.Entry<Object, List<Map<String, Object>>> entry : dongh.entrySet()) {
List<Map<String, Object>> value = entry.getValue();
Collections.sort(value, Comparator.comparing(s -> ((Date) s.get("hfrq"))));
}
// List<Map<String, List<Map<String, String>>>> shuju = new ArrayList<>();
List<Map> shuju = new ArrayList<>();
for (Map.Entry<Object, List<Map<String, Object>>> entry : dongh.entrySet()) {
List<Map<String, Object>> value = entry.getValue();
// value.forEach(item->{
// map.put("bghnr",(String)item.get("bghnr"));
// map.put("hfrq",(String)item.get("hfrq"));
// });
List<String> hflc = new ArrayList<>();
List<Date> hfrq = new ArrayList<>();
SyDkKfslyxxJkVo syDkKfslyxxJkVo = new SyDkKfslyxxJkVo();
for (Map<String, Object> item : value) {
hflc.add((String)item.get("bghnr"));
hfrq.add((Date)item.get("hfrq"));
}
syDkKfslyxxJkVo.setHflc(hflc);
syDkKfslyxxJkVo.setHfrq(hfrq);
Map<String,SyDkKfslyxxJkVo> map1= new HashMap<>();
map1.put((String)entry.getKey(),syDkKfslyxxJkVo);
shuju.add(map1);
}
// 存储商品的主图的第一张
List<String> itemImages = orderGoodsItems.stream()
.filter(item -> {
String masterImages = item.getGoodsMasterImage();
if (StringUtils.isBlank(masterImages)) {
return false;
}
return !CollectionUtils.isEmpty(JSON.parseArray(masterImages, String.class));
})
.map(item -> {
String masterImages = item.getGoodsMasterImage();
List<String> images = JSON.parseArray(masterImages, String.class);
return images.get(0);
}).collect(Collectors.toList());
bonusChangeRecordDto.setGoodsImage(JSON.toJSONString(itemImages));
这辈子坚持与不坚持都不可怕,怕的是独自走在坚持的道路上。。。
今天的文章lambda表达式筛选_matlab对一条命令的搜索顺序分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/86417.html