使用java 8在列表中添加对象

Leo*_*rdo 1 java lambda list java-8

我是Java 8的新手,所以我有一个列表,CollegeGroup我有一个Student有很多组.每个小组都有一个CollegeGroupMember与学生相关联的人.有没有办法在我的列表中返回这些组(studentCollegeGroups)?

final List<CollegeGroup> studentCollegeGroups = new ArrayList<>();
student.getCollegeGroupMembers().forEach(collegeGroupMember -> 
             studentCollegeGroups.add(collegeGroupMember.getCollegeGroup()));
Run Code Online (Sandbox Code Playgroud)

Lou*_*man 5

Java 8最佳实践不是将内容添加到外部列表,而是创建整个列表作为一个流表达式的结果.在这里,它可能是

return student.getCollegeGroupMembers().stream()
    .map(CollegeGroupMember::getCollegeGroup)
    .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)