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())
                ));
相关推荐
拂拉氏10 小时前
【知识讲解】 AVL树从基本成员的介绍到核心接口的实现(插入、判断、删除等等)
数据结构·算法·avl树
卓怡学长10 小时前
w266基于spring boot + vue 圣地延安美食乐享系统
java·数据库·vue.js·spring boot·spring·intellij-idea
C++、Java和Python的菜鸟10 小时前
第7章 Java高级技术
java·开发语言
程序员佳佳10 小时前
模型网关灰度不是调百分比:把放量、观测和回滚做成账本
java·数据库·人工智能·redis·gpt·aigc·embedding
Listen·Rain12 小时前
Springboot整合Ollama实现调用本地多模型
java·spring boot·后端
霸道流氓气质12 小时前
Java 工程师 AI 智能体(Agent)完整学习路线
java·人工智能·学习
aaPIXa62212 小时前
C++模板元编程:编译期计算Fibonacci数列
java·开发语言·c++
SunnyDays101112 小时前
Java 编辑 PDF:从增删改查到加密保护
java·修改 pdf·编辑 pdf
球king12 小时前
CC GUI 插件:在 IDEA 中使用 CodeX
java·ide·intellij-idea
码少女12 小时前
数据结构——希尔排序
数据结构·排序算法