RxJava收集发射值到数组

时间:2019-06-11 16:04:36

标签: rx-java rx-java2 rx-kotlin

如何收集从可观察到数组的发射值?

输入:

Observable.just(1,2,3,4,5,6)

预期输出:

[1,2,3,4,5,6]

1 个答案:

答案 0 :(得分:1)

有两种选择。最简单的方法是使用toList()

Observable.just(1,2,3,4,5,6)
    .toList()

如果您需要做的不仅仅是将它们收集到列表中,还可以使用collect()

List<Integer> collected = new ArrayList<>();
Observable.just(1,2,3,4,5,6)
    .collect(collected, (alreadyCollected, value) -> {
             // Do something with value and add it to collected at the end
        });

Here,您会找到有关collect的更好的解释