Это может быть простой вопрос о потоках Java.Скажем, у меня есть объект List<Student>
.
public class Student {
public String name;
public Set<String> subjects;
public Set<String> getSubjects() {
return subjects;
}
}
Как я могу получить все предметы из списка студентов?
Я могу сделать это, используя для каждого цикла.Как я могу преобразовать приведенный ниже код для использования потоков?
for (Student student : students) {
subjectsTaken.addAll(student.getSubjects());
}
Вот моя попытка использования потоков Java 8.Это дает мне ошибку Incompatible types
.
Set<String> subjectsTaken = students.stream()
.map(student -> student.getSubjects())
.collect(Collectors.toSet());