gpt4 book ai didi

java - 我应该如何将 List> 压缩为 Observable> ?

转载 作者:行者123 更新时间:2023-12-02 13:05:02 24 4
gpt4 key购买 nike

我有一个List<Observable<T>>我想转变成Observable<List<T>>

我知道Observable.zip ,这似乎是正确的函数,但我不确定如何定义 zipper范围。

这是我尝试过的:

final List<Observable<T>> tasks = getTasks();

final Observable<List<T>> task = Observable.zip(
tasks,
x -> ImmutableList.copyOf(x)
.stream()
.map(x -> (T)x)
.collect(ImmutableList.toImmutableList()));

但是,这需要未经检查的转换。

我应该如何在 RxJava 2 中解决这个问题?

<小时/>

请注意this question指的是 RxJava 1。

最佳答案

使用原语:

List<Observable<T>> tasks = getTasks();
Observable<List<T>> task = Observable.merge(tasks).toList();

但是,您真的需要一次完成所有任务吗?您可以跳过 toList 并在任务到来时处理它们;这将为您提供更好的响应能力和更轻松的并发控制。

关于java - 我应该如何将 List<Observable<T>> 压缩为 Observable<List<T>> ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44167948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com