【问题标题】:How to flatmap a stream of streams in Java? [duplicate]如何在 Java 中对流进行平面映射? [复制]
【发布时间】:2015-08-13 15:17:33
【问题描述】:

我想将对象流转换为单个对象流。我知道我必须使用flatMap 方法,但我无法实现,请看:

Stream<Stream<Object>> objectStreams = ...
Stream<Object> flatMappedStream = objectStreams.flatMap( ... );

谁能帮帮我?

【问题讨论】:

    标签: java java-8 java-stream


    【解决方案1】:

    基本上,您希望将所有嵌套流连接成一个扁平流,而不影响成员本身。你会用

    objectStreams.flatMap(Function.identity());
    

    因为你必须为每个流成员提供一些映射函数,在这种情况下它是标识函数。

    【讨论】:

    • 如果您的 Stream> 源自之前的 .map 调用,您只需将该 .map() 更改为 .flatMap()。那么你就不需要这个 Function.identity() 东西了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-01
    • 2015-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多