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())
                ));
相关推荐
程序员阿鹏几秒前
怎么理解削峰填谷?
java·开发语言·数据结构·spring·zookeeper·rabbitmq·rab
代码的奴隶(艾伦·耶格尔)6 分钟前
Sentinel限流熔断
java·前端·sentinel
小徐Chao努力14 分钟前
【Langchain4j-Java AI开发】02-模型参数配置与调优
java·开发语言·人工智能
啥都不懂的小小白15 分钟前
CyclicBarrier深度解析:Java中的“循环栅栏“同步工具
java·juc·cyclicbarrier
毕设源码-朱学姐26 分钟前
【开题答辩全过程】以 基于uni—app的民宿预订系统为例,包含答辩的问题和答案
java·eclipse
bjxiaxueliang26 分钟前
一文详解Cpp多线程编程:从传统pthread到现代thread实践指南
java·开发语言·jvm
机智的人猿泰山28 分钟前
spring boot 运行测试类时:Error creating bean with name ‘serverEndpointExporter‘ 问题
java·spring boot·后端
爬山算法30 分钟前
Hibernate(3)Hibernate的优点是什么?
java·后端·hibernate
LYFlied35 分钟前
【每日算法】LeetCode 300. 最长递增子序列
前端·数据结构·算法·leetcode·职场和发展
秋邱40 分钟前
Java面向对象进阶实战:用工厂模式+策略模式优化支付系统
java·bash·策略模式