文章详情页
android - RxJava 在onNext(User user) 可以把user赋值给外部成员变量mUser吗?
浏览:344日期:2024-02-28 18:57:50
问题描述
我刚学RxJava, 执行完下面的代码 mUser还是null 原因会不会是异步造成的,纯属猜测,,请路过的大大帮忙看看,非常感谢OvO~另外,想请教下你们对于从网络取到的user一般怎么处理?/?
问题解答
回答1:doOnNext会在onNext之前被调用,一般是一些准备工作,随意不太了解你在onNext和doOnNext为什么会写一样的代码.....另外你用的应该是retrofit吧,不知道Retrofit的Build有没有错,所以有可能是根本没有获取到User信息,RxJava本来就是专门处理异步流的库,所以不存在你说的“异步问题”
关于怎么处理要看你的业务需要而定,比如会根据User的地区,再发起请求来获得当地天气;或者过滤掉某些年龄小于18的User
回答2:异步编程,代码执行完相当于预定了一个任务,可能这个任务还没有开始执行。要等到异步任务执行完成后,才会执行回调,才能拿到真正的返回值
举个例子:要睡觉了,告诉媳妇,明早我要吃蛋饼,做好了叫我。等你说完这句话,蛋饼呢?蛋饼呢?显然得等到明天早上才有
回答3:把doOnNext操作符去掉再试试
标签:
java
上一条:android - realm 数据库配合 rxjava使用,按照教程配置,为什么找不到 MyRxFactory() 这个方法下一条:html - 内嵌app 的web 页面如何应用 app 内置的静态文件
相关文章:
1. android - No signature of method: java.lang.Boolean.call()2. mysql控制台没法退出?3. docker绑定了nginx端口 外部访问不到4. docker 下面创建的IMAGE 他们的 ID 一样?这个是怎么回事????5. golang - 用IDE看docker源码时的小问题6. docker - 各位电脑上有多少个容器啊?容器一多,自己都搞混了,咋办呢?7. angular.js - angular内容过长展开收起效果8. angular.js - angular中的a标签不起作用9. 前端 - css自定义字体10. css3动画 - css3 transition设置多个属性的时候不能只用逗号分隔?
排行榜

网公网安备