Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java8在列表中添加对象_Java_List_Lambda_Java 8 - Fatal编程技术网

使用Java8在列表中添加对象

使用Java8在列表中添加对象,java,list,lambda,java-8,Java,List,Lambda,Java 8,我是Java8新手,所以我有一个CollegeGroup的列表,我有一个学生有很多组。每个组都有一个与学生链接的CollegeGroupMember。有没有办法在我的列表StudentCollegeGroups中返回这些组 final List<CollegeGroup> studentCollegeGroups = new ArrayList<>(); student.getCollegeGroupMembers().forEach(collegeGroupMember

我是Java8新手,所以我有一个CollegeGroup的列表,我有一个学生有很多组。每个组都有一个与学生链接的CollegeGroupMember。有没有办法在我的列表StudentCollegeGroups中返回这些组

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

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

return student.getCollegeGroupMembers().stream()
    .map(CollegeGroupMember::getCollegeGroup)
    .collect(Collectors.toList());

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

return student.getCollegeGroupMembers().stream()
    .map(CollegeGroupMember::getCollegeGroup)
    .collect(Collectors.toList());

代码有什么问题?使用mapCollegeGroupMember::getCollegeGroup.forEachstudentCollegeGroups::add或map….collectCollectors.toList在返回给您的列表中收集组。好处:映射到CollegeGroup后,您可以使用不同或排序的中间操作,这些操作可以对组而不是成员进行操作。谢谢!我还需要distinct,非常感谢。您的代码有什么问题吗?使用mapCollegeGroupMember::getCollegeGroup.forEachstudentCollegeGroups::add或map…collectCollectors.toList在返回给您的列表中收集组。好处:映射到CollegeGroup后,您可以使用不同或排序的中间操作,这些操作可以对组而不是成员进行操作。谢谢!我也需要,非常感谢。