Выполнение операции над каждым элементом списка, возвращая Flowable - PullRequest
0 голосов
/ 17 января 2020

Я работаю с Rx Java, в Kotlin.

У меня есть функция, transform(f: Foo): Single<Bar>

Как мне взять List из Foo s, и выполните transform для каждого из них, чтобы получить результат Flowable<Bar>, где каждый next в Flowable является результатом вызова transform?

В принципе, мне нужно функция

fun getFlowable(foos: List<Foo>): Flowable<Bar> {
    // Runs transform() on each element of foos
    // Concatenates the results to the flowable.
}

1 Ответ

1 голос
/ 17 января 2020
fun getFlowable(foos: List<Foo>, transform: (Foo) -> Bar): Flowable<Bar> =
        Flowable.fromIterable(foos.map(transform))

или лучше

fun getFlowable(foos: List<Foo>, transform: (Foo) -> Bar): Flowable<Bar> =
        Flowable.fromIterable(foos).map(transform)
...