您的位置:首页 > 编程语言 > Java开发

RxJava学习之转换型操作符

2017-03-09 21:58 357 查看

RxJava学习之转换型操作符

标签(空格分隔): RX系列

转换型操作符

下面展示了可用于Observable发射的数据执行变换操作的各种操作符

map()—对序列的每一项都应用一个函数来变换Observable发射的数据序列

flatMap()、concatMap()、flatMapIterable()—将Observable发射的数据集合变换为Observables集合,然后将这些Observable发射的数据平坦化的放进一个单独的Observable

switchMap()—将Observable发射的数据集合变换为Observables集合,然后只发射这些Observables最近发射的数据

scan()—对Observable发射的每一项数据应用一个函数,然后按照顺序依次发射每一个值

groupyBy()—将Observable分拆为Observable集合,将原始的Observable发射的数据按照key分组,每一个Observable发射一组不同的数据

buffer()—它顶起从Observable收集数据到一个集合,然后把这些数据集合打包发射,而不是一次发射

window()—定期将来自Observable的数据分拆成一些Observable窗口,然后发射这些窗口,而不是每次发射一项

cast()—在发射之前强制将Observable发射的所有哦数据转换为指定数据类型

map操作符



对Observable发射的每一项数据应用一个函数,执行变换操作

Map操作符对原始Observable发射的每一项数据应用一个你选择的函数,然后返回一个发射这些结果的Observable。

RxJava将这个操作符实现为map函数。这个操作符默认不在任何特定的调度器上执行。

Map操作符的源码

[code]
*
*
* Scheduler:
* {@code map} does not operate by default on a particular {@link Scheduler}.
*
*
* @param func
* a function to apply to each item emitted by the Observable
* @return an Observable that emits the items from the source Observable, transformed by the specified
* function
* @see ReactiveX operators documentation: Map
*/
public final Observable map(Func1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: