java - 对列表中的所有项目执行一个任务,然后在 RxJava 中执行另一个任务

标签 java android kotlin rx-java rx-kotlin

不幸的是,我的 REST 删除操作仅适用于一项。所以我想做的是,

Observable.just(items).flatMapIterable { items -> items }.flatMap {
                //call REST DELETE for every item
            }.flatMap {
                // call REST GET
            }

问题是为每个项目调用 GET 调用。我如何等待完成所有删除完成然后执行 GET 调用?

提前致谢。

最佳答案

在您的情况下,您可以像这样应用 toList()

fun doTask(items: List<String>):Observable<Boolean>{
        return Observable.fromIterable(items)
                .flatMap { processItem(it) }
                .toList()
                .toObservable()
                .flatMap { finalTask() }
    }

关于java - 对列表中的所有项目执行一个任务,然后在 RxJava 中执行另一个任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57404599/

相关文章:

java - 使程序针对不同的输入运行网站

android - java.net.ConnectException : failed to connect to/192. 168.1.107(端口 80)10000 毫秒后:isConnected 失败:EHOSTUNREACH(没有到主机的路由)

android - 如何获取缩放后的图片宽度

java - Google App Engine Cloud Endpoints userId 为空

java - char[] 中保留的控制台输出导致 OutOfMemoryError

java - 在 Canvas 上以更好的分辨率绘画? (安卓)

android - SERVICE_NOT_AVAILABLE,同时使用 Xamarin for Android 注册 Google Cloud Messaging

kotlin - 为什么在Kotlin中不需要在Room中的查询功能添加suspended关键字?

kotlin - 如何将 lambda 表达式分配给函数类型变量?

kotlin - 无法执行Kotlin协程(无此类方法异常