如果我有一个类Book,其中包含一个Page对象列表,那么如何使用Java8的一些特性(如流、收集器、lamdas等)生成一个给定的Book对象集合的Page对象集合?我知道如何使用预Java 8技术来完成这一任务,但是我希望用Java 8特性的一行来完成它。
谢谢。
发布于 2017-01-14 19:44:39
假设Book有一个返回Page集合的getPages方法,您需要使用flatMap方法来“平整”书籍集合中的页面集合:
Stream<Page> pages = books.stream().flatMap(b -> b.getPages().stream());这会产生一个流;如果您需要一个集合,请使用列表收集器来构造它。
https://stackoverflow.com/questions/41654198
复制相似问题