RxJava操作符列表

weixin_33724059發表於2016-11-26

建立操作符:12個

【just】:將一個或幾個物件轉化為可觀測源

【from】:將一個迭代器、future、陣列轉化為可觀測源

【repeat】:不斷重複一個物件或序列的可觀測源

【repeatWhen】:

【create】:完全自己建立可觀測源:通過寫onSubscribe回撥

【 defer·延遲】:建立一個工廠,根據引數來為每個訂閱者,生產可觀測源。

訂閱者可獲取最新版本的觀測資料。

【range·範圍】:建立範圍內整陣列的可觀測源

【interval·間距】:相隔特定間距時間發射整數序列的可觀測源

【timer·定時器】:特定時間後發射的可觀測源

【empty·空】:無資料的可觀測源,立即呼叫onComplete

【error】:立即呼叫onError

【never】:永不結束:測試時有用



轉化操作符:8項

【map·對映】:應用一個函式轉化·資料

sample( )orthrottleLast( )flatMap( ),concatMap( ), andflatMapIterable( )】:

              將多個資料轉化為多個可觀測源或迭代器,壓入一個可觀測源中

              concatMap:連線而非合併:即不改變順序

switchMap( )·切換對映】:類似於flatMap,但是新的資料將覆蓋之前的資料,切換到當前資料的新可觀測源

scan( )·瀏覽】:將前一個結果和資料作為轉換函式引數

groupBy( )·分組】:通過key將資料分組,化為一批新的可觀測源

buffer( )·快取】:快取一批資料作為元素髮射出去

window( )·視窗】:將資料根據視窗拆分為多個可觀測源,發射

cast( )·拋、投】:轉化為特定的型別


過濾操作符:23個

filter( )·過濾】:過濾條件

takeLast( )·】:條件:最後n個元素

last( )·】:條件:最後一個元素

lastOrDefault( )】:最後一個元素或為空時的預設值

takeLastBuffer( )·】:最後n個元素作為list,發射

skip( )·略過·跳躍】:略過前面n個元素

skipLast( )】:略過最後n個元素

take( )·取】:取前n個元素

first( )andtakeFirst( )】:取第一個或滿足條件的第一個。無時,first會報錯,takefirst會發射empty可觀測源

firstOrDefault( )】:帶預設值的取第一個或滿足條件的第一個元素

elementAt( )】:取第n個元素

elementAtOrDefault( )】:

sample( )orthrottleLast( )】:


組合操作符:

未完待續。謝謝!

相關文章