创建操作符: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个元素
组合操作符:
未完待续。谢谢!