我需要在我的应用中填写活动列表。
我可以按类型A请求事件,然后如果结果不为空,我填写该列表。
如果结果为空,我需要按类型B检索,并用它填充列表。
我考虑过两个RxJava单曲,但只有当第一个是空的时才这样做。我在脑海中看到了逻辑,但我无法将其付诸实践。
任何帮助?
答案 0 :(得分:1)
我假设您的意思是Single<List<T>>
类型的来源,因为空Single
是不可能的。在这种情况下,请使用flatMap
:
eventSourceA
.flatMap(list -> {
if (list.isEmpty()) {
return eventSourceB;
}
return Single.just(list);
})
.subscribe(list -> { /* ... */ });