List<Map<String,Object>> risk = new ArrayList<>();
List<String> ids = new ArrayList<>();
riskAddrCount.stream().filter(x -> null !=x ).forEach(x ->{
if(risk.size()==0){
risk.add(x);
ids.add(x.get("tid").toString());
}else {
if(!ids.contains(x.get("tid").toString())){
risk.add(x);
ids.add(x.get("tid").toString());
}else{
risk.stream().filter(m -> null !=m &&
m.get("tid").toString().equals(x.get("tid").toString())).forEach(m ->{
m.put("riskCount",Integer.parseInt(m.get("riskCount").toString())+Integer.parseInt(m.get("riskCount").toString()));
});
}
}
});
使用java 8的steam实现list集合 map中去除重复项并且某一项相加
最新推荐文章于 2025-08-24 15:52:50 发布
这段代码主要展示了如何使用Java8的StreamAPI对List<Map<String,Object>>进行处理,包括添加元素、检查ID是否存在以及在存在重复ID时累加风险计数(riskCount)。它首先创建了两个列表,然后过滤并处理riskAddrCount中的元素,确保每个元素的tid唯一,且更新风险计数。
2155

被折叠的 条评论
为什么被折叠?



