比方说,我有一个字符串“ sky is blue”,并且在内部流程中,我将其划分为几个要沿图向下传播的元素。
Source.single("only one element")
.via(Flow.fromFunction(string => string.split(" ").toSeq))
.map(*do something for each word*)
在此代码中,Flow
的类型为Flow[String, Seq[String, NotUsed]
,这很有意义,因为流必须恰好具有一个输出。
是否有Akka Streams机制来解决该问题?
如果我理解正确,您希望字符串的每个块都成为流中的单个元素。这可以使用mapConcat来完成:
Source.single("only one element")
.mapConcat { string =>
string.split(" ")
}
.map(*do something for each word*)