主要结合https://www.imooc.com/article/68834这篇来学习的,先提一下观察者模式的一个别名,就是:发布-订阅模式。
在RxJava中有3种角色:
* Observable (被观察者)
* Observer /Subscriber (观察者/订阅者)
* Event (事件)
被观察者 Observables可以发出一系列的事件
,发出的事件可以是诸多不同的场景,比如发送网络请求、执行数据库操作、文件操作,一个for循环等等。 然后当事件执行结束后,交给 Observer/Subscriber 的回调处理。一言以蔽之,被观察者一个一个事件发出来,然后 观察者/订阅者 收到,就是RxJava。 若事件从Observable产生,直到Observer/Subscriber 接收不需要其他处理,那么流程为: Obsevable -> Subscriber。主流程为以下三步:
事件的产生发送:
Observable发出一系列的事件
创建一个ObservableObservable<String> observable = Observable.create(new Observable.OnSubscribe<String>() { @Override
public void call(Subscriber<? super String> subscriber) { // 发送一个 Hello World 事件
subscriber.onNext("Hello World!"); // 事件发送完成
subscriber.onCompleted();
}
这段代码可以理解为, Observable 发出了一个类型为 String ,值为 “Hello World!” 的事件,仅此而已。
作者:哈士奇WWW
链接:https://www.imooc.com/a