美文网首页
Rxjava 变换理解

Rxjava 变换理解

作者: hw_zhu | 来源:发表于2016-06-11 16:53 被阅读20次

    flatMap() 的原理是这样的:

    • 1.使用传入的事件对象创建一个 Observable 对象;
    • 2.并不发送这个 Observable, 而是将它激活,于是它开始发送事件;
    • 3.每一个创建出来的 Observable 发送的事件,都被汇入同一个 Observable ,而这个 Observable负责将这些事件统一交给 Subscriber 的回调方法
    1. 这三个步骤,把事件拆成了两级,通过一组新创建的 Observable 将初始的对象『铺平』之后通过统一路径分发了下去。而这个『铺平』就是 flatMap() 所谓的 flat
    1. Oberverable** 相当于服务器**,在GET/POST请求后,返回数据给subscriber

    flatmap的参数理解

    @requires_authorization     
         ConnectionBase.getApiService2()
    .getStudents(101)
    .flatMap(new Func1<student, observable<course="">>() {
    @Override
    public Observable<course> call(Student student) {
    return ConnectionBase.getApiService2().getAllCourse(student.getId());
    }
    })
    

    Func1有两个入参,前者是原始的参数类型,后者是返回值类型;

    相关文章

      网友评论

          本文标题:Rxjava 变换理解

          本文链接:https://www.haomeiwen.com/subject/qtqedttx.html