RxJava 過濾操作符 ofType

2021-07-10 05:05:53 字數 812 閱讀 7297

.oftype(class)  指定某個型別的class,過濾屬於這個型別的的結果,其它拋棄

例子:

observable.just("first", 2, 3, "four").oftype(integer.class).subscribe(new action1() 

});

結果:03-01 13:03:18.350 7828-7828/com.rxandroid.test1 d/----->: ------>call():2

03-01 13:03:18.350 7828-7828/com.rxandroid.test1 d/----->: ------>call():3

在這裡過濾掉了非integer型別的資料,只有2,3符合要求

當傳遞object.class時並不會過濾任何資料,所有資料都是其子類

結合filter操作符演示乙個例子:找出集合中大於5的數

object data = ;

observable.from(data).oftype(integer.class).filter(new func1()

}).subscribe(new action1()

});

結果為:

03-01 13:19:48.210 12414-12414/com.rxandroid.test1 d/----->: ------>call():6

03-01 13:19:48.210 12414-12414/com.rxandroid.test1 d/----->: ------>call():7

RxJava過濾操作符 debounce

debounce操作符是對源observable間隔期產生的結果進行過濾,如果在這個規定的間隔期內沒有別的結果產生,則將這個結果提交給訂閱者,否則忽略該結果,原理有點像光學防抖.debounce 時間,時間單位 例子 observable.create new observable.onsubscr...

RxJava筆記 RxJava操作符

用來建立observable。public static observablecreate onsubscribef 把其他型別的物件和資料型別轉化成observable。observable.just 123 把其他型別的物件和資料型別轉化成observable。與just區別在與引數返回值不同 ...

RxJava操作符學習

操作符學習推薦閱讀 官方英文 翻譯中文 先來看乙個簡單的例子 被觀察者 observable.onsubscribeintegeronsubscribe new observable.onsubscribe 觀察者 subscriberintegersubscriber new subscriber...