四要素
- 被观察者
- 观察者
- 订阅
- 事件
使用
Observable observable = Observable.create(new Observable.OnSubscribe<String>() {
@Override
public void call(Subscriber<? super String> subscriber) {
subscriber.onNext("Hello");
subscriber.onNext("Imooc");
subscriber.onCompleted();
}
});
Observable observableJust = Observable.just("hello", "Imooc");
String[] parameters = {"hello", "Imooc"};
Observable observableFrom = Observable.from(parameters);
Observer<Object> observer = new Observer<Object>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onNext(Object s) {
ToastUtils.showLong(RxActivity.this, s.toString());
}
};
public void doRxjava(){
observable.subscribe(observer);
}
优点:
- 代码简洁。
- 链式调用。
缺点:
- 使用起来有学习成本。
- 代码库过于复杂,出问题不容易定位。
参考: