如何运行收集嵌套在java的8个流

尼克股利:

我有一个对象的名单,A具有包含街道名称的属性叫地址 - streetName

从对象列表中。我想所有的街道名称的GetList。一个层次的集合,似乎从流相当可行的,但我怎么用一行代码得到嵌套的字符串。

因此,对于正从目标AI可以做到这一点的地址列表:

listOfObjectsA.stream().map(a::getAddress).collect(Collectors.toList());

我的最终目标是让街道名称的列表,所以我不能够想出使用Lambda表达式第二层次的集合。

我无法找到我一直在寻找精确的例子。可能有人请帮助我。

rohitvats:

你可以简单地链中的另一个map操作以获取街道名称:

listOfObjectsA
.stream()
.map(a::getAddress)
.map(a -> a.getStreetName())  // or a::getStreetName
.collect(Collectors.toList());

第一map变换你的对象为Address对象,接下来map需要的Address对象和将它们转换street names,然后再由收集器收集。

流操作形成的管道,从而为你的终端操作之前需要(在这种情况下,你可以有很多业务collect操作)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章