RxAndroid是Rxjava的扩展,多了onCompleted() 和onError()方法
操作符
创建Observables的操作符
Create
Just
接收字符串
From
可以接收数组,list等
Defer
延迟 直到订阅的时候才创建Observable,即调用subscribe的时候才去创建Observable.
Empty/Never/Throw
Interval
Observable.interval(period,timeunit);设置一定间隔时间去发射
Range
Observable.range(1,5).repeat(2)
Repeat
Observable.range(1,5).repeat(2)
Start
Observable.range(1,5).startWith(2)
Timer
Observable.timer(delaytime, timeunit); 定时器
转化操作符
Map
把一个Object 转化为另一个我们自己想要的Object,一对一的转化
FlatMap
一对多的转化
场景:一个网络请求依赖于另一个网络请求后的数据。
GroupBy
可以对数据进行分组
Buffer
Scan
实例之一:以此类推的求和
Window
过滤操作符
Debounce
在规定的时间范围内 没有下一个数据项的产生就将该数据发射。
Distinct
去重
ElementAt
取指定位置的数据
Filter
按照指定的自定义的规则过滤数据
First
取列表数据的第一个数据
Last
取数据项的最后一项数据
IgnoreElements
不发射数据项,即不会调用onNext(),其他会调用。
Sample
每隔一定时间采集数据发射。
Skip
跳过前几项的数据不发射
SkipLast
跳过后几项不发射
Take
取前几项发射数据
TakeLast
取后几项发射数据
Combining Observables操作符
Zip
用来合并两个Observable发射的数据项,根据Func2函数生成一个新的值并发射出去。当其中一个Observable发射的数据结束,则会终止另一个Observable的数据的发射。
Capture.PNG
Merge
把两个Observable的数据源组合后发射,按时间的先后顺序
Capture.PNG
StartWith
在一个Observable的数据源前插入另一个Observable的数据源
Capture.PNG
CombineLastest
取第一个数据源的最后一个数据和第二个数据源作相应的操作
Capture.PNG
Join
两个observable 结合组成一个新的observable.
(Switch)SwitchOnNext
替换
Error Handling Operators
Catch
Retry
网友评论