您的位置:首頁技術文章
文章詳情頁

android - RxJava 在onNext(User user) 可以把user賦值給外部成員變量mUser嗎?

瀏覽:100日期:2024-02-28 18:57:50

問題描述

我剛學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
相關文章:
国产综合久久一区二区三区