编写以下代码 java stream 对象list把某个字段作为key,对象作为value
时间: 2024-04-30 18:22:19 浏览: 239
java 中如何从LIST 对象取值
5星 · 资源好评率100%
假设我们有一个Student类,其中包含id、name和age字段。
我们可以使用Java 8的Stream API将List<Student>转换为Map<String, Student>,其中id字段作为key,Student对象作为value。
代码如下:
```
List<Student> students = new ArrayList<>();
students.add(new Student(1, "Alice", 20));
students.add(new Student(2, "Bob", 21));
students.add(new Student(3, "Charlie", 22));
Map<String, Student> studentMap = students.stream()
.collect(Collectors.toMap(Student::getId, Function.identity()));
System.out.println(studentMap);
```
输出结果:
```
{1=Student{id=1, name='Alice', age=20}, 2=Student{id=2, name='Bob', age=21}, 3=Student{id=3, name='Charlie', age=22}}
```
阅读全文