RxJava2操作符RxJava

RxJava2操作符之“Take”

2017-03-31  本文已影响1105人  坑吭吭

前言

最近我也在学习RxJava2,在网上找了好多文章来读,发现大多数都是说RxJava2和RxJava之间到底有什么区别的,每一个例子都要考虑RxJava里是怎么写的,让人看着都头大,知道后来我在简书上发现了一个非常棒的RxJava2的入门系列文章,我觉得非常的好,在这里可以推荐给大家:http://www.jianshu.com/p/464fa025229e

而我准备要写的这个系列则是在入门之后的,对于各种操作符的用法的讲解,在此之前我也翻译了一个歪果仁的RxJava2的示例代码,文章内的截图和代码我也准备用这个项目里的内容来,如果想直接看代码的童鞋可以直接传送:https://github.com/nelson1110/RxJava2-Android-Samples

文章内容我也准备从简单的操作符写起,最后把比较抽象不容易搞清楚的操作符单独拿出来整理一下。

作用

emit only the first n items emitted by an Observable
发射这个被观察者的前n个item

示例用法

Observable.just(1, 2, 3, 4, 5)
                // 运行在后台线程
                .subscribeOn(Schedulers.io())
                // 运行在主线程
                .observeOn(AndroidSchedulers.mainThread())
                //注意take操作符->只发送前三个事件
                .take(3)
                .subscribe(getObserver());//这里是个观察者,这个例子中观察者并不重要。。

运行结果

1,2,3

分析

我们创建了一个会发送1~5 五个item的被观察者
然后用操作符take,里面的参数为3,即只发送前三个item
最后,我们从观察者中拿到的item为1,2,3

总结

前几个操作符肯定比较容易理解,甚至一看名字就知道干啥的。这样做主要是为了更容易的进入学习的状态,以及增强自己掌握它的信心。

上一篇下一篇

猜你喜欢

热点阅读