list转map(根据某个或多个属性分组)

需要将对应的list换成本地list,和对象换成本地对象

1、List转Map<String,List>

java 复制代码
// 根据一个字段分组
Map<String, List<String>> map = objectLists.stream()
                .collect(Collectors.groupingBy(
                        Object::getName,
                        Collectors.mapping(Object::getId, Collectors.toList())));

// 根据多个字段分组
Map<String, List<Object>> groupMap = objectLists.stream().collect(
                Collectors.groupingBy(s->s.getId()+s.getName()));


// 把某属性作为key,对应的Object对象作为value     	   
Map<String, List<Object>> groupMap = objectLists.stream().collect(
                Collectors.groupingBy(Object::getName));

2、List转Map<String,List>

java 复制代码
Map<String, List<String>> studentMap = studentList.stream()
                .collect(Collectors.groupingBy(
                        Object::getId,
                        Collectors.mapping(Object::getName, Collectors.toList())
                ));
相关推荐
yaoxin52112319 分钟前
229. Java 集合 - 操作集合中的多个元素(批量操作)
java·开发语言·python
C++chaofan23 分钟前
MyBatis - Plus学习笔记
java·spring boot·笔记·后端·mysql·架构·mybatis
HSJ017025 分钟前
Aviator中使用BigDecimal进行高精度计算
java·开发语言·bigdecimal·aviator
weixin_3077791329 分钟前
利用 AWS Lambda 与 EventBridge 优化低频 Java 作业的云计算成本
java·开发语言·云原生·云计算·aws
一缕南风41 分钟前
Spring Boot 响应拦截器(Jackson)实现时间戳自动添加
java·spring boot·后端·拦截器
期待のcode1 小时前
Docker容器
java·docker·容器
Homeey1 小时前
深入理解 synchronized:从硬件原子性到并发架构设计
java·后端
ZhangBlossom1 小时前
【Java】EasyExcel实现导入导出数据库中的数据为Excel
java·数据库·excel
L.EscaRC1 小时前
Lua语言知识与应用解析
java·python·lua
S7777777S2 小时前
easyExcel单元格动态合并示例
java·excel