使用JavaStream将List转为Map

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top

首发博客地址

系列文章地址


使用Java Stream将List转换为Map可以使用Collectors.toMap()方法。toMap()方法接受两个参数,第一个参数是用于提取Map的键的函数,第二个参数是用于提取Map的值的函数。下面是一个示例:

复制代码
import java.util.*;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<Person> people = Arrays.asList(
                new Person("Alice", 25),
                new Person("Bob", 30),
                new Person("Charlie", 35)
        );

        Map<String, Integer> ageByName = people.stream()
                .collect(Collectors.toMap(Person::getName, Person::getAge));

        System.out.println(ageByName);
    }
}

class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}

在上面的示例中,我们有一个Person类表示人员信息,包含姓名和年龄。我们将一个List<Person>转换为一个Map<String, Integer>,其中姓名作为键,年龄作为值。使用Person::getName作为键提取函数,Person::getAge作为值提取函数。最后,我们将结果打印出来。

本文由mdnice多平台发布

相关推荐
无籽西瓜a18 小时前
MD5算法原理、适用场景
java·后端·算法·哈希算法·md5
Ares-Wang18 小时前
flask 》》内置HTMLParser
后端·python·flask
独自归家的兔18 小时前
OCPP 1.6 协议详解:ClearCache 清除缓存指令
java·后端·spring
阿丰资源18 小时前
基于SpringBoot的高校心理教育辅导系统(附源码+数据库+文档)
数据库·spring boot·后端
鹏程十八少18 小时前
8. 2026金三银四 Android别再说你会用 RecyclerView了!20道面试题测测你的真实水平
前端·后端·面试
奇逍科技圈18 小时前
开源赋能与 BC 一体化:深度解析中企销订货系统源码如何重构批发零售增长引擎
后端·架构·开源·零售
SamDeepThinking18 小时前
秒杀系统里的RocketMQ,不是发个消息那么简单
java·后端·架构
卷毛的技术笔记18 小时前
告别“盲猜式”排障:分布式链路追踪方案选型与Spring Boot 3实战
java·spring boot·分布式·后端·spring·面试·系统架构
eqwaak019 小时前
4 月技术快讯|Rust 1.90 正式发布,系统级开发再进化
开发语言·后端·rust
大鸡腿同学19 小时前
人选天选
后端