Вы можете объединить их с combineLatest
и предоставить функцию для переноса значений в пользовательский класс:
Observable.combineLatest(
source1,
source2,
source3,
source44,
Function4<String, String, String, String, LatestResult> { t1, t2, t3, t4 ->
LatestResult(t1, t2, t3, t4)
})
.subscribe { latestResult ->
// Access the latest results here:
println(latestResult.text1)
println(latestResult.text2)
println(latestResult.text3)
println(latestResult.text4)
}
}
data class LatestResult(val text1: String, val text2: String, val text3: String, val text4: String)
В этом примере предполагается, что все ваши наблюдаемые испускают строки, но вы можете легко их изменить.