java8 flatmap
本文介绍了java8 flatmap的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
java8 stream 的 flatmap 跟map有啥区别?有例子不
解决方案
flatmap可以在lamda中返回集合,然后flat为单个元素一个个放入最后的结果集中。
比如Person里头有个多个Hobby(List<Hobby>),那我想获取所有人的所有hobby,则可以:
List<Person> persons = ...
Set<Hobby> hobbySet = persons.parallelStream().flatMap(p -> p.getHobbyList.stream())
.collect(Collectors.toCollection(() -> new TreeSet<Hobby>(
(h1,h2) -> h1.getName().compareTo(h2.getName())
)))
这篇关于java8 flatmap的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文