您的位置:首页技术文章
文章详情页

android - RxJava 在onNext(User user) 可以把user赋值给外部成员变量mUser吗?

【字号: 日期:2024-02-28 18:57:50浏览:26作者:猪猪

问题描述

我刚学RxJava, 执行完下面的代码 mUser还是null 原因会不会是异步造成的,纯属猜测,,请路过的大大帮忙看看,非常感谢OvO~另外,想请教下你们对于从网络取到的user一般怎么处理?/?

android - RxJava 在onNext(User user) 可以把user赋值给外部成员变量mUser吗?

问题解答

回答1:

doOnNext会在onNext之前被调用,一般是一些准备工作,随意不太了解你在onNext和doOnNext为什么会写一样的代码.....另外你用的应该是retrofit吧,不知道Retrofit的Build有没有错,所以有可能是根本没有获取到User信息,RxJava本来就是专门处理异步流的库,所以不存在你说的“异步问题”

关于怎么处理要看你的业务需要而定,比如会根据User的地区,再发起请求来获得当地天气;或者过滤掉某些年龄小于18的User

回答2:

异步编程,代码执行完相当于预定了一个任务,可能这个任务还没有开始执行。要等到异步任务执行完成后,才会执行回调,才能拿到真正的返回值

举个例子:要睡觉了,告诉媳妇,明早我要吃蛋饼,做好了叫我。等你说完这句话,蛋饼呢?蛋饼呢?显然得等到明天早上才有

回答3:

把doOnNext操作符去掉再试试

标签: java
相关文章: