Observable 数据流有两种类型:hot 和 cold。Cold observables只有当有订阅者订阅的时候, Cold Observable 才开始执行发射数据流的代码。并且每个订阅者订阅的时候都独立的执行一遍数据流代码。 Observable.interval 就是一个 Cold Observable。每一个订阅者都会独立的收到他们的数据流。 try {...
分类:
编程语言 时间:
2016-05-12 20:27:34
阅读次数:
326
6.2 观察者设计模式观察者模式定义了对象之间的一对多依赖,这样依赖,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。观察者模式的结构
抽象主题角色:抽象主题角色把所有对观察者对象的引用保存在一个聚集(比如ArrayList对象)里,每个主题都可以有任何数量的观察者。抽象主题提供一个接口,可以增加和删除观察者对象,抽象主题角色又叫做抽象被观察者(Observable)角色。
具体主题角色...
分类:
其他好文 时间:
2016-05-12 12:09:07
阅读次数:
127
涉及到列表的数据时,总是会想到一个过滤这个词语。比如,在1-100的整数中,筛选出偶数或者奇数相加,或者将前49个数相加,又或者后36个数相加,等等。在这样的场景中,不由想到将需要的数据筛选出来。在发射的Observable中,可不可以做筛选呢?
1.过滤序列 - filter
filter操作符是对源Observable产生的结果按照指定条件进行过滤,只有满足条件的结果才...
分类:
编程语言 时间:
2016-05-12 11:55:17
阅读次数:
273
初步认识观察者模式 观察者模式又称为发布/订阅(Publish/Subscribe)模式,因此我们可以用报纸期刊的订阅来形象的说明: 报社方负责出版报纸. 你订阅了该报社的报纸,那么只要报社发布了新报纸,就会通知你,或发到你手上. 如果你不想再读报纸,可以取消订阅,这样,报社发布了新报纸就不会再通知 ...
bbs.chinaacc.com/forum-2-3/topic-5704679.htm...
分类:
编程语言 时间:
2016-05-09 07:09:25
阅读次数:
220
这些操作符用于从错误通知中恢复CatchCatch类似于java 中的try/catch,当错误发生的时候,可以拦截对onError的调用,让Observable不会因为错误的产生而终止。在Rxjava中,将这个操作符实现为3个操作符,分别是:OnErrorReturn当发生错误的时候,让Observable发射一个预先定义好的数据并正常地终止
OnErrorResume当发生错误的时候,由另外一...
分类:
编程语言 时间:
2016-05-07 08:00:33
阅读次数:
198
场景:犯罪集团专门负责贩毒和洗黑钱2种犯罪活动。公安部新成立2个部门,一个负责扫毒,一个负责打击洗钱犯罪。公安部决定派出卧底,打入犯罪集团的内部,获取犯罪集团的证据和在犯罪活动的发生时通知对应的部门,进行逮捕行动。犯罪集团:public class CrimeGroup extends Observable { private boolean isFanDu;
private bool...
分类:
其他好文 时间:
2016-05-07 07:40:02
阅读次数:
188
RxJava在现在是一个非常前卫的异步框架,也是由于他非常新,所以比较难以驾驭。
像okhttp直接在onStop或者onDestroy 调用它的cancel方法就行了,但是Rxjava并没有那么简单。因为假如每次请求都得到Observable对象,然后再onStop中unsubscribe取消,这样很不利于封装。而且会造成代码量很多,所以我找到了用rxlifecycle的解决方案。
先导包...
分类:
移动开发 时间:
2016-05-07 07:04:57
阅读次数:
321
到目前为止我们看到的示例都很简单。你也可以用 Rx 来处理大批量实时数据,但是如果把所有大批量数据整个打包发给你的话,使用 Rx 还有啥优势呢? 本节 我们将介绍一些操作符(operators )来过滤数据、或者把所有数据变成一个需要的数据。
如果你了解过函数式编程(functional programming)或者 Java 中的 Stream,则本节介绍的操作函数是非常眼熟的。...
分类:
编程语言 时间:
2016-04-29 17:28:57
阅读次数:
492
在之前的系列中,我吧sequence翻译成了序列,题目我就不翻译了,感觉翻译过来的有点失去了点啥。其他好多地方都是用stream(流)来比喻和形容。可视化Observable在Rxjs编程中你已经学了一些关于使用最频繁的操作符了。讨论什么是sequence的操作符感觉有点抽象。为了帮助开发者更容易的理解操作符,我们使用marble diagrams(弹子图?翻译估计有问题)来标准可视化。他们很形象的...
分类:
Web程序 时间:
2016-04-29 17:23:54
阅读次数:
170
count
count 函数和 Java 集合中的 size 或者 length 一样。用来统计源 Observable 完成的时候一共发射了多少个数据。 Observable values = Observable.range(0, 3);
values.subscribe(new Observer() {...
分类:
编程语言 时间:
2016-04-29 16:28:45
阅读次数:
264