我是Java 8的新手,所以我有一个CollegeGroup
列表,并且我有一个具有许多组的Student
。每个小组都有一个与学生链接的CollegeGroupMember
。有什么办法可以在我的列表(studentCollegeGroups)中返回这些组?
final List<CollegeGroup> studentCollegeGroups = new ArrayList<>();
student.getCollegeGroupMembers().forEach(collegeGroupMember ->
studentCollegeGroups.add(collegeGroupMember.getCollegeGroup()));
最佳答案
Java 8的最佳实践不是将内容添加到外部列表,而是作为一个流表达式的结果来创建整个列表。在这里,可能是
return student.getCollegeGroupMembers().stream()
.map(CollegeGroupMember::getCollegeGroup)
.collect(Collectors.toList());