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...
}