Rxjava1 与 Android 的故事(2)—— Transform

223 阅读1分钟
原文链接: www.jianshu.com

系列故事的第2篇介绍RxJava的变换API

map:


map

map方法对Observable发射的每一项数据应用一个函数,执行变换操作

flatMap:


flatMap

flatMap将一个发射数据的Observable变换为多个Observables,然后将它们发射的数据合并后放进一个单独的Observable

concatMap:


concatMap

concatMap与flatMap相比是可以按顺序接收Observable发送的对象

switchMap:


switchMap

buffer:


buffer

buffer定期收集Observable的数据放进一个数据包裹,然后发射这些数据包裹,而不是一次发射一个值

window:


window

window非常类似buffer操作符,区别在于buffer操作符产生的结果是一个List,而window操作符产生的结果是一个Observable,订阅者可以对这个结果Observable重新进行订阅处理

scan:


scan

groupBy:


groupBy

groupBy将一个Observable进行分组加工成为一个Observable>,观察者onNext()收到的是GroupedObservable

总结:

以上的方法已经基本例举了RxJava中有关Observable对象变换的API,具体用法还需要大家多加练习呀!

注:本人会在此系列文章的末尾加上GitHub源码地址,敬请期待。。。