RXjava2_3:数据的转换和回调嵌套的解决

RXjava2_3:数据的转换和回调嵌套的解决

参考:

http://blog.csdn.net/jdsjlzx/article/details/51493552

https://juejin.im/post/5848dd3eac502e00691385c5

 

数据的转换

map方法数据转换:

 


 

Flatmap方法的转换:


 

map”vs”flatmap

map方法:

仅仅是将原来管道中的数据进行了加工变化之后继续处理。管道没有变,最后回传的是对应的改变之后的数据。这里的类型需要和最后观察者需要的观察数据类型一致。

Flatmap方法:

创建一个新的水管, 然后发送转换之后的新的事件, 下游接收到的就是这些新的水管发送的数据. 这里需要注意的是, flatMap并不保证事件的顺序。这个方法,最后回传的是新管道的observable。最后在统一由监听者处理。这和上一章的onDoNext的流程是一致的。

回调嵌套

作为rxjava之前我引入除了好用的流式处理方式之外,最重要的是它可以很方便地处理回调嵌套带来的程序不优美。

Eg:在做登录的时候请求完token之后做获取用户信息的处理


queryA为请求token,queryB为请求用户信息。最后的观察者订阅的是解析用户信息。

 

请求回调多的话可以这样:

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值