一.創(chuàng)建操作符
作用:創(chuàng)建被觀察者(Observable)對象幔嗦,發(fā)送事件
1.基本創(chuàng)建:creat()
2.快速創(chuàng)建并發(fā)送事件:just,fromArray,fromIterable,never,empty,error
3.延遲創(chuàng)建:defer,timer,interval,intervalRange,range,rangeLong
二.變換操作符
作用:對事件序列中的事件 / 整個事件序列 進行加工處理(即變換)沥潭,使得其轉變成不同的事件 / 整個事件序列
1.map,事件轉換
2.flatMap,事件拆分再合并轉換钝鸽,順序可能變了
3.concatMap庞钢,事件拆分再合并轉換,順序不變
4.Buffer颜懊,緩存被觀察者發(fā)送的事件
三.組合风皿,合并操作符
作用:組合 多個被觀察者(Observable) & 合并需要發(fā)送的事件
1.組合多個被觀察者
1.1concat,concatArray 按發(fā)送順序,組合多個被觀察者
1.2merge,mergeArray 按時間組合多個被觀察者
1.3concatDelayError咸这,mergeDelayError 錯誤處理
2.合并多個事件
2.1zip 按數(shù)量合并
2.2combineLatest魔眨,combineLatestDelayError 按時間合并
2.3reduce,collecy合并成一個事件發(fā)送
3.發(fā)送前追加事件,startWith,startWithArray
4.統(tǒng)計發(fā)送的數(shù)量侄刽,count
四.功能性操作符
作用:輔助被觀察者(Observable) 在發(fā)送事件時實現(xiàn)一些功能性需求
1.連接被被觀察者和觀察者朋凉,subscribe
2.線程調(diào)用,subscribe,被觀察者的線程切換当叭,observeOn盖灸,觀察者的線程調(diào)度
3.延遲操作,delay
4.在事件的生命周期中操作赁炎,do
5.錯誤處理,retry讥裤,retryUntil,retryWhen
6.重復發(fā)送操作间螟,repeat無條件损肛,repeatWhen有條件
五.過濾操作符
作用:過濾 / 篩選 被觀察者(Observable)發(fā)送的事件 & 觀察者 (Observer)接收的事件
1.根據(jù) 指定條件 過濾事件
filter,offeType,skip,skipLats,distinc,distincUnitilChanged
2.根據(jù) 指定事件數(shù)量 過濾事件
take,takeLast,
3.根據(jù) 指定時間 過濾事件
throttleFirst,throttleLast,sample,throttleWithTimeOut,debunce
4.根據(jù) 指定事件位置 過濾事件
firstElement,lastElement,elemetAt,elemetAtError
六.條件/布爾操作符
作用:
1.通過設置函數(shù)治拿,根據(jù)條件發(fā)送符合條件的事件。
2.判罰事件的發(fā)送條件劫谅,是否符合設置的函數(shù)條件。
all,exists,contains,isEmpty,amb,takeWhile,takeUntil,skipWhile,skipUntil,defaultEmpty,SequenceEqual.