java8stream操作:将集合转化为集合元素中属性为key的

本文介绍如何使用Java 8的Stream API将一个包含Student对象的List转换为Map,其中Map的key为Student对象的id,value为整个Student对象。同时,提供了完整的代码示例和Student类的定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        List<Student> students = new ArrayList<>();

        students.add(new Student(1,"张三",90));
        students.add(new Student(2,"李四",90));
        students.add(new Student(3,"王五",90));
        students.add(new Student(4,"赵六",90));

        Map<Integer, String> nameMap = students.stream().collect(Collectors.toMap(Student::getId, Student::getName));

此时生产的map的key为Student的id,value为name。如果要将value改为Student:

        Map<Integer, Student> collect = students.stream().collect(Collectors.toMap(Student::getId, o -> o));

student类也给上:

public class Student {

    private int id;
    private String name;
    private int score;

    public Student(int id, String name, int score) {
        this.id = id;
        this.name = name;
        this.score = score;
    }
get...
set...
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值