Observable.just(“a”) //Observable1
.map(new Func1<String, String>() { //Observable2
@Override
public String call(String s) {
System.out.print(Thread.currentThread().getName() + “:first–” + s +“\n”);
return s + s;
}
})
.subscribe(new Subscriber() { //代码⑥ Subscriber
@Override
public void onCompleted() {
System.out.print(Thread.currentThread().getName()+“\n”);
System.out.print(“completed”+“\n”);
}
@Override
public void onError(Throwable e) {
System.out.print(“error”);
}
@Override
public void onNext(String s) {
System.out.println(s);
}
});
}
先说说自己的理解,若把整个链条看成一个整体对象,那么just创建被观察者对象,而subscribe()里的Subscriber作为观察者;若每一步都分开看,just()和subscribe()中间的操作符即是观察者,又是被观察者。
Observable中每个操作符基本都会创建出一个新的Observable;因此可以解理成后一级的操作符去观察前一个Observable对象;以上例来说,.subscribe的Sub

本文详细解析了RXJava的链式调用过程,从`.just()`开始,通过`.map()`操作符创建新的Observable,并深入到`.subscribe()`的内部,解释了如何通过`lift()`和`OperatorMap`实现函数转换并传递给下一级Subscriber。文中还分析了Observer对象的创建和调用流程,展示了RXJava中事件传递的机制。
最低0.47元/天 解锁文章
1441

被折叠的 条评论
为什么被折叠?



