紧接上一篇博文,本篇介绍RxJava,一个实现异步操做的库。java
RxJava最核心的两个东西是Observables和Subscribersweb
1.Observables(被观察者,事件源)发出一系列事件设计模式
2.Subscribers(观察者)处理这些事件异步
这里的事件能够是任何你感兴趣的东西(触摸事件,web接口调用返回的数据等等)ide
一个Observable能够发出零个或者多个事件,知道结束或者出错。函数
每发出一个事件,就会调用它的Subscriber的onNext方法,最后调用Subscriber.onNext()或者Subscriber.onError()结束。ui
Rxjava的看起来很想设计模式中的观察者模式,可是有一点明显不一样,那就是若是一个Observerble没有任何的的Subscriber,那么这个Observable是不会发出任何事件的。spa
eg.一个用RxJava来打印Hello World的程序设计