闭关修行中......
doOnNext會在onNext之前被調用,一般是一些準備工作,隨意不太了解你在onNext和doOnNext為什麼會寫一樣的代碼.....另外你用的應該是retrofit吧,不知道Retrofit的Build有沒錯,所以有可能是根本沒有獲取到User信息,RxJava本來就是專門處理異步流的庫,所以不存在你說的「非同步問題」
關於怎麼處理要看你的業務需要而定,例如會根據User的地區,再發起請求來獲得當地天氣;或者過濾掉某些年齡小於18的User
非同步編程,程式碼執行完相當於預定了一個任務,可能這個任務還沒開始執行。要等到非同步任務執行完成後,才會執行回調,才能拿到真正的回傳值
舉個例子:要睡覺了,告訴媳婦,明早我要吃蛋餅,做好了叫我。 等你說完這句話,蛋餅呢?蛋餅呢? 顯然得等到明天早上才有
把doOnNext操作符去掉再試試
doOnNext會在onNext之前被調用,一般是一些準備工作,隨意不太了解你在onNext和doOnNext為什麼會寫一樣的代碼.....另外你用的應該是retrofit吧,不知道Retrofit的Build有沒錯,所以有可能是根本沒有獲取到User信息,RxJava本來就是專門處理異步流的庫,所以不存在你說的「非同步問題」
關於怎麼處理要看你的業務需要而定,例如會根據User的地區,再發起請求來獲得當地天氣;或者過濾掉某些年齡小於18的User
非同步編程,程式碼執行完相當於預定了一個任務,可能這個任務還沒開始執行。要等到非同步任務執行完成後,才會執行回調,才能拿到真正的回傳值
舉個例子:
要睡覺了,告訴媳婦,明早我要吃蛋餅,做好了叫我。
等你說完這句話,蛋餅呢?蛋餅呢?
顯然得等到明天早上才有
把doOnNext操作符去掉再試試