Java 中对象List 转map实践

java 复制代码
class MyObject {
    Long id;
    String name;

    // Constructor
    public MyObject(Long id, String name) {
        this.id = id;
        this.name = name;
    }

    // Getters
    public Long getId() {
        return id;
    }

    public String getName() {
        return name;
    }
}

第一种 List 转 Map<Long, String>

java 复制代码
List<MyObject> myObjectList=new ArrayList<>();
//  自行赋值

 Map<Long, String> map = myObjectList.stream()
 					.collect(Collectors.toMap(
                            MyObject::getId,   // key mapper
                            MyObject::getName// value mapper
                    ));

第二种 List 转 Map<Long, List>

java 复制代码
List<MyObject> myObjectList=new ArrayList<>();
//  自行赋值

 Map<Long, List<String>>  map = myObjectList.stream()
                        .collect(Collectors.groupingBy(
                                MyObject::getId, // key mapper
                                Collectors.mapping(MyObject::getName, Collectors.toList()) // value mapper
                        ));
相关推荐
风起洛阳@不良使10 分钟前
spring中xml和注解开发的对比
xml·java·spring
布朗克16814 分钟前
Go 入门到精通-27-泛型编程
开发语言·golang·xcode·泛型编程
Tenifs14 分钟前
关闭 IDEA 的英文单词拼写检查
java·intellij-idea
cui_ruicheng20 分钟前
Python从入门到实战(十五):文件操作与目录管理
开发语言·python
captain37622 分钟前
创建多线程程序
java·java-ee
野蛮人6号23 分钟前
黑马天机学堂Day01-08.搭建项目环境-本地开发部署方式——不知道nacos的密码是什么
java·spring cloud·黑马程序员·天机学堂·黑马天机学堂
Roy_Sashulin24 分钟前
灵杉Java编程平台第一章:安装
java·开发语言
名字还没想好☜24 分钟前
Go 用 errgroup 管理并发子任务:错误收敛、取消传播与限流
开发语言·后端·golang·go·并发
2zcode1 小时前
基于MATLAB深度卷积特征的多曝光图像自适应融合系统设计与实现
开发语言·matlab·多曝光图像自适应融合系统
壹号用户1 小时前
c++入门之list了解及使用
数据结构·list