如何使用java-stream将多个列表收集到一个列表?
发布时间:2020-12-14 05:42:30 所属栏目:Java 来源:网络整理
导读:这个问题在这里已经有一个答案: Java8 Lambda: concat list1 如何使用java-streams将多个List值收集到一个列表中? ListMyListService services;services.stream().XXX.collect(Collectors.toList());interface MyListService { ListMyObject getObjects();
这个问题在这里已经有一个答案:>
Java8 Lambda: concat list1
如何使用java-streams将多个List值收集到一个列表中? List<MyListService> services; services.stream().XXX.collect(Collectors.toList()); interface MyListService { List<MyObject> getObjects(); } 因为我完全控制了这个接口:或者我应该改变方法来返回一个Array而不是一个List? 解决方法
您可以使用flatMap收集包含在MyListService实例中的列表:
List<MyObject> list = services.stream() .flatMap(s -> s.getObjects().stream()) .collect(Collectors.toList()); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |