我有一個對象列表:ArrayList<T> arrayList;
,並且在列表的每個對象上都有一個Id:T.getId()
我需要提出請求。作爲響應對象的另一個列表是牽強:ArrayList<E> anotherList
使用rxJava2在hashmap上合併多個retrofit2請求
我想根據id進行多次電話:T.getId()
和每一個迴應,我想合併一個對象:在一個HashMap ArrayList<E> anotherList
:T
與響應Hashmap<T, ArrayList<E> anotherList>
和在所有請求完成後返回值。有沒有一種方法,我可以做到這一點使用rxJava
:
//For every `T.getId()`, fetch `ArrayList<E> anotherList`
for(int i=0; i<arrayList.size(); i++){
T object = arrayList.get(i);
fetchData(T.getId());
}
每onNext()
合併(hashmap.put())T
與Hashmap<T, ArrayList<E> anotherList>
響應ArrayList<E> anotherList
。畢竟請求返回完最後hashmap
包含那些對:
retrofit.fetchData(T.getId())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.flatMap(...)
.merge(...)
.subscribeWith(...)
有沒有一種方法,我可以做到這一點?