这可能是一个简单的
Java流问题.说,我有一个List< Student>宾语.
public class Student {
public String name;
public Set subjects;
public Set getSubjects() {
return subjects;
}
}
我怎样才能获得学生名单上的所有科目?
我可以使用for each循环来完成此操作.如何将以下代码转换为使用Streams?
for (Student student : students) {
subjectsTaken.addAll(student.getSubjects());
}
这是我尝试使用Java 8流.这给了我一个不兼容的类型错误.
Set subjectsTaken = students.stream()
.map(student -> student.getSubjects())
.collect(Collectors.toSet());