我有一组学生-Set<Student> students
class Student{
String Id;
String getId(){ return Id;}
.....
}
我正在尝试使用上面设置的条目初始化
Map<String,List<StudentResult>>
:Map<String,List<StudentResult>> studentResultMap = students.keySet().stream().collect(
Collectors.toMap(x -> x.getId(),new ArrayList<StudentResult>()));
但这不会编译-如何实现?
最佳答案
这是您的问题所在:
Map<String,List<StudentResult>> studentResultMap = students
.stream().collect(Collectors.toMap(x -> x.getId(), new ArrayList<StudentResult>()));
您需要将两个函数传递给
Collectors.toMap
,但是,您要传递List
实例作为第二个参数Map<String,List<StudentResult>> studentResultMap = students
.stream().collect(Collectors.toMap(x -> x.getId(), x -> new ArrayList<StudentResult>()));