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
                        ));
相关推荐
ha20428941945 分钟前
Linux操作系统学习之---线程控制
java·linux·学习
清辞85311 分钟前
C++入门(底层知识C与C++的不同)
开发语言·c++·算法
Knight_AL13 分钟前
Spring AOP 中@annotation的两种写法详解
java·spring
fqbqrr15 分钟前
2510C++,api设计原则,不除零
开发语言·c++
某空m17 分钟前
【Android】BottomNavigationView实现底部导航栏
android·java
顾漂亮20 分钟前
Spring AOP 实战案例+避坑指南
java·后端·spring
科比不来it39 分钟前
Go语言数据竞争Data Race 问题怎么检测?怎么解决?
开发语言·c++·golang
biter down42 分钟前
c语言14:字符指针
c语言·开发语言
SimonKing1 小时前
Mybatis-Plus的竞争对手来了,试试 MyBatis-Flex
java·后端·程序员
光军oi1 小时前
JAVA全栈JVM篇————初识JVM
java·开发语言·jvm