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
                        ));
相关推荐
Thomas_YXQ4 分钟前
Unity3D在ios平台下内存的优化详解
开发语言·macos·ios·性能优化·cocoa
咸甜适中10 分钟前
rust的docx-rs库,自定义docx模版批量生成docx文档(逐行注释)
开发语言·rust·docx·docx-rs
浒畔居14 分钟前
泛型编程与STL设计思想
开发语言·c++·算法
Java天梯之路14 分钟前
Spring Boot 钩子全集实战(七):BeanFactoryPostProcessor详解
java·spring boot·后端
Fcy64820 分钟前
C++ 异常详解
开发语言·c++·异常
wr20051439 分钟前
第二次作业,渗透
java·后端·spring
机器视觉知识推荐、就业指导40 分钟前
Qt 和 C++,是不是应该叫 Q++ 了?
开发语言·c++·qt
m0_748229991 小时前
ThinkPHP快速入门:从零到实战
c语言·开发语言·数据库·学习
liu****1 小时前
三.Qt图形界面开发完全指南:从入门到掌握常用控件
开发语言·c++·qt
阿蒙Amon1 小时前
C#每日面试题-Thread.Sleep和Task.Delay的区别
java·数据库·c#