RxJava 2.x 被观察者 Observable:
Observable | ||
Flowable | 支持被压 | |
Single | 只有onError,onSuccess事件 | 没有onComplete |
Completable | 只有onError,onComplete事件,从发发射任何事件,经常结合andThen操作符使用 | 没有map、flatMap等操作符,比Observable和Flowable少 |
Maybe | 用onSuuccess()方法来发射数据,如果先调用onComplete,后面就不会发射任何事件 | 只能发射0或者1个数据,发射多个数据,后面的数据也不会处理 |
Subject | 包含4种类型,分别是AsyncSubject、BehaviorSuject、ReplaySubject、PublishSubject | 即是Observable,又是Observer,可以做一个桥梁或者代理 |
Subject | 发射行为 |
AsyncSubject | 不论订阅发生在什么时候,只发射最后一个数据 |
BehaviorSubject | 发送订阅之前的一个数据和订阅之后的全部数据(如果没有数据,发射默认数据) |
ReplaySubjcet0 | 不论订阅发生在什么时候,都发射全部数据 |
PublishSubject | 发送订阅之后的数据 |