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

    Last

    Last

    只發(fā)射最后一項(或者滿(mǎn)足某個(gè)條件的最后一項)數據

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

    如果你只對Observable發(fā)射的最后一項數據,或者滿(mǎn)足某個(gè)條件的最后一項數據感興趣,你可以使用Last操作符。

    在某些實(shí)現中,Last沒(méi)有實(shí)現為一個(gè)返回Observable的過(guò)濾操作符,而是實(shí)現為一個(gè)在當時(shí)就發(fā)射原始Observable指定數據項的阻塞函數。在這些實(shí)現中,如果你想要的是一個(gè)過(guò)濾操作符,最好使用TakeLast(1)。

    在RxJava中的實(shí)現是lastlastOrDefault。

    可能容易混淆,BlockingObservable也有名叫lastlastOrDefault的操作符,它們會(huì )阻塞并返回值,不是立即返回一個(gè)Observable。

    過(guò)濾操作符

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

    只發(fā)射最后一項數據,使用沒(méi)有參數的last操作符。

    示例代碼

    Observable.just(1, 2, 3)
              .last()
              .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: 3
    Sequence complete.

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

    這個(gè)版本的last也是接受一個(gè)謂詞函數,返回一個(gè)發(fā)射原始Observable中滿(mǎn)足條件的最后一項數據的Observable。

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

    lastOrDefaultlast類(lèi)似,不同的是,如果原始Observable沒(méi)有發(fā)射任何值,它發(fā)射你指定的默認值。

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

    這個(gè)版本的lastOrDefault可以接受一個(gè)謂詞函數,如果有數據滿(mǎn)足條件,返回的Observable就發(fā)射原始Observable滿(mǎn)足條件的最后一項數據,否則發(fā)射默認值。

    lastlastOrDefault默認不在任何特定的調度器上執行。

    上一篇:FlatMap下一篇:Start
    草莓视频在线观看视频6_免费草莓视频_草莓视频在线下载免费官网_草莓视频黄色在线观看