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())
                ));
相关推荐
盖世英雄酱5813612 分钟前
物品超领取损失1万事故复盘(一)
java·后端
CryptoRzz17 分钟前
印度尼西亚(IDX)股票数据对接开发
java·后端·websocket·web3·区块链
你怎么知道我是队长1 小时前
C语言---文件读写
java·c语言·开发语言
Jayden_Ruan1 小时前
C++分解质因数
数据结构·c++·算法
wszy18092 小时前
外部链接跳转:从 App 打开浏览器的正确姿势
java·javascript·react native·react.js·harmonyos
期待のcode2 小时前
认识Java虚拟机
java·开发语言·jvm
raining_peidx2 小时前
xxljob源码
java·开发语言
肥猪猪爸2 小时前
双重检查锁(DCL)与 volatile 的关键作用
java·开发语言·单例模式
bubiyoushang8882 小时前
MATLAB实现雷达恒虚警检测
数据结构·算法·matlab
wu_asia2 小时前
编程技巧:如何高效输出特定倍数数列
c语言·数据结构·算法