使用Stream流 根据条件对list中数据进行分组
使用Stream流 根据条件对list中数据进行分组
文章共243字 · 阅读需要大约1分钟
一键AI生成摘要,助你高效阅读
问答
·
1.先创建数据
List<Map<String, Object>> list = new ArrayList<>();
Map<String, Object> map1 = new HashMap<>();
map1.put("name","a");
map1.put("age","3");
Map<String, Object> map2 = new HashMap<>();
map1.put("name","b");
map2.put("age","4");
Map<String, Object> map3 = new HashMap<>();
map1.put("name","c");
map3.put("age","3");
Map<String, Object> map4 = new HashMap<>();
map1.put("name","d");
map4.put("age","5");
list.add(map1);
list.add(map2);
list.add(map3);
list.add(map4);
2.使用stream流处理数据
要求:对list中age属性相同的map进行分组处理
Map<Object, List<Map<String, Object>>> ageMap = list.stream().collect(Collectors.groupingBy(item -> {
return item.get("age");
}));
3.对处理的数据进行后续操作
for (Object o : ageMap.keySet()) {
List<Map<String, Object>> maps = ageMap.get(o);
}
更多推荐
已为社区贡献1条内容
所有评论(0)