RxJava操作符FlatMap

以下图片均来自官网

操作符类别

创建

变换

  1. FlatMap
    FlatMap操作符可以将Observable发射出的数据转化成多个Observables,并将转化后的数据[可能是多个]平坦化为一个新的Observable
RxJava操作符FlatMap_第1张图片
flatMap.c.png

FlatMap操作符通过将您指定的函数应用于源Observable发出的每个item来转换Observable,该函数返回一个本身可以发出item的Observable。 FlatMap然后合并这些Observables的items,将这些合并结果以自己的顺序发布。

这个操作符非常有用,当Observable返回的数据并非你所需要的内容是,你可以通过此方法将items转化成你所需的数据内容并再次发送出去.当然需要注意的是,FlatMap操作符在合并发送Observables的items数据时,数据可能会出现交错.在特定语言实现中,如果你对变化后的发送顺序有严格的要求,那么使用ConcatMap吧,它不会交换已变换的items的发送,而是以严格的顺序发送这些数据.

你可能感兴趣的:(RxJava操作符FlatMap)