在线二区人妖系列_国产亚洲欧美日韩在线一区_国产一级婬片视频免费看_精品少妇一区二区三区在线

鍍金池/ 教程/ Android/ Do
調度器 Scheduler
Empty/Never/Throw
Replay
這個頁面展示了創(chuàng)建Observable的各種方法。
ObserveOn
ReactiveX
TimeInterval
Window
本頁展示的操作符用于對整個序列執(zhí)行算法操作或其它操作,由于這些操作必須等待數據發(fā)射完成(通常也必須緩存這些數據),它們對于非常長
IgnoreElements
Distinct
Last
Start
And/Then/When
Switch
創(chuàng)建操作
Materialize/Dematerialize
CombineLatest
Catch
實現(xiàn)自己的操作符
StringObservable
Map
ConnectableObservable
Using
Take
BlockingObservable
TakeLast
Defer
RxJavaSchedulersHook
First
FlatMap
這個頁面的操作符可用于根據條件發(fā)射或變換Observables,或者對它們做布爾運算:
Do
Repeat
Serialize
這個頁面展示的操作符可用于過濾和選擇Observable發(fā)射的數據序列。
這個頁面列出了很多用于Observable的輔助操作符
Single
Retry
從錯誤中恢復的技術
Sample
Merge
算術和聚合操作
Range
Timestamp
RxJava Issues
From
Subscribe
Subject
Delay
Skip
SubscribeOn
Filter
按字母順序排列的全部操作符列表
Timeout
Scan
onError
Zip
RxJava文檔和教程
Publish
ElementAt
第一個例子
SkipLast
Just
Timer
Debounce
GroupBy
條件和布爾操作
這個頁面展示了可用于對Observable發(fā)射的數據執(zhí)行變換操作的各種操作符。
Introduction
rxjava-async
介紹響應式編程
這個頁面展示的操作符可用于組合多個Observables。
ReactiveX
Connect
操作符分類
StartWith
Interval
Join
To
Buffer
RefCount
介紹
Observable

Do

Do

注冊一個動作作為原始Observable生命周期事件的一種占位符

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/do.c.png" alt="do" />

你可以注冊回調,當Observable的某個事件發(fā)生時,Rx會在與Observable鏈關聯(lián)的正常通知集合中調用它。Rx實現(xiàn)了多種操作符用于達到這個目的。

RxJava實現(xiàn)了很多Do操作符的變體。

doOnEach

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/doOnEach.png" alt="doOnEach" />

doOnEach操作符讓你可以注冊一個回調,它產生的Observable每發(fā)射一項數據就會調用它一次。你可以以Action的形式傳遞參數給它,這個Action接受一個onNext的變體Notification作為它的唯一參數,你也可以傳遞一個Observable給doOnEach,這個Observable的onNext會被調用,就好像它訂閱了原始的Observable一樣。

doOnNext

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/doOnNext.png" alt="doOnNext" />

doOnNext操作符類似于doOnEach(Action1),但是它的Action不是接受一個Notification參數,而是接受發(fā)射的數據項。

示例代碼


Observable.just(1, 2, 3)
          .doOnNext(new Action1<Integer>() {
          @Override
          public void call(Integer item) {
            if( item > 1 ) {
              throw new RuntimeException( "Item exceeds maximum value" );
            }
          }
        }).subscribe(new Subscriber<Integer>() {
        @Override
        public void onNext(Integer item) {
            System.out.println("Next: " + item);
        }

        @Override
        public void onError(Throwable error) {
            System.err.println("Error: " + error.getMessage());
        }

        @Override
        public void onCompleted() {
            System.out.println("Sequence complete.");
        }
    });

輸出

Next: 1
Error: Item exceeds maximum value

doOnSubscribe

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/doOnSubscribe.png" alt="doOnSubscribe" />

doOnSubscribe操作符注冊一個動作,當觀察者訂閱它生成的Observable它就會被調用。

doOnUnsubscribe

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/doOnUnsubscribe.png" alt="doOnUnsubscribe" />

doOnUnsubscribe操作符注冊一個動作,當觀察者取消訂閱它生成的Observable它就會被調用。

doOnCompleted

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/doOnCompleted.png" alt="doOnCompleted" />

doOnCompleted 操作符注冊一個動作,當它產生的Observable正常終止調用onCompleted時會被調用。

doOnError

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/doOnError.png" alt="doOnError" />

doOnError 操作符注冊一個動作,當它產生的Observable異常終止調用onError時會被調用。

doOnTerminate

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/doOnTerminate.png" alt="doOnTerminate" />

doOnTerminate 操作符注冊一個動作,當它產生的Observable終止之前會被調用,無論是正常還是異常終止。

finallyDo

http://wiki.jikexueyuan.com/project/rx-docs/images/operators/finallyDo.png" alt="finallyDo" />

finallyDo 操作符注冊一個動作,當它產生的Observable終止之后會被調用,無論是正常還是異常終止。

上一篇:To下一篇:RxJava Issues