transform<S> 方法

Stream<S> transform<S>(
  1. StreamTransformer<T, S> streamTransformer
)

streamTransformer 应用到此流。

返回转换后的流,即 streamTransformer.bind(this) 的结果。此方法简单地允许以链式方式编写对 streamTransformer.bind 的调用,如下所示

stream.map(mapping).transform(transformation).toList()

这可能比直接调用 bind 更方便。

streamTransformer 可以返回任何流。返回的流是否为广播流,以及它将包含哪些元素,完全取决于转换。

此方法应始终用于处理整个流表示单个值的转换,该值可能已经分成几个部分进行传输,如从磁盘读取文件或从网络上获取。然后转换将生成一个新的流,该流增量地转换流的值(可能使用 Converter.startChunkedConversion)。结果流可能是结果的块,但不必对应于源字符串的特定事件。

实现

Stream<S> transform<S>(StreamTransformer<T, S> streamTransformer) {
  return streamTransformer.bind(this);
}