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
                        ));
相关推荐
之歆2 小时前
Spring AI入门到实战到原理源码-MCP
java·人工智能·spring
LawrenceLan2 小时前
Flutter 零基础入门(十一):空安全(Null Safety)基础
开发语言·flutter·dart
yangminlei2 小时前
Spring Boot3集成LiteFlow!轻松实现业务流程编排
java·spring boot·后端
qq_318121592 小时前
互联网大厂Java面试故事:从Spring Boot到微服务架构的技术挑战与解答
java·spring boot·redis·spring cloud·微服务·面试·内容社区
txinyu的博客2 小时前
解析业务层的key冲突问题
开发语言·c++·分布式
J_liaty2 小时前
Spring Boot整合Nacos:从入门到精通
java·spring boot·后端·nacos
码不停蹄Zzz2 小时前
C语言第1章
c语言·开发语言
行者963 小时前
Flutter跨平台开发在OpenHarmony上的评分组件实现与优化
开发语言·flutter·harmonyos·鸿蒙
阿蒙Amon3 小时前
C#每日面试题-Array和ArrayList的区别
java·开发语言·c#
daidaidaiyu3 小时前
Spring IOC 源码学习 一文学习完整的加载流程
java·spring