首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法将io.reactivex.Flowable <io.reactivex.Maybe>分配给: io.reactivex.Flowable <Object>

无法将io.reactivex.Flowable <io.reactivex.Maybe>分配给: io.reactivex.Flowable <Object>
EN

Stack Overflow用户
提问于 2022-05-25 00:32:25
回答 1查看 46关注 0票数 0

希望你们都在做威尔。我对此非常陌生,我不断地遇到不兼容类型的问题。

代码语言:javascript
复制
Flowable<Boolean> checkTriggerDaily() {

        List<Bson> fields = new ArrayList<Bson>();
        fields.add(exists("dueDate", true));
        Bson filter = and(fields);

        Flowable.fromPublisher(marketplaceMongoService.getCollection().find(filter)).map{ third ->
                    getTheReport(third.id).flatMap { size ->
                     TaskService.createTasks(size).toFlowable().flatMap({})
                    }
                }
    }

我在标题上一直有同样的错误。这个函数所做的是循环一个mongo集合,并调用getTheReport每一项。什么getTheReportReturns,我把它处理成createTasks函数。

getTheReport ->返回也许createTasks ->返回

EN

回答 1

Stack Overflow用户

发布于 2022-05-25 18:35:10

因为

代码语言:javascript
复制
getTheReport(third.id).flatMap { size ->
    TaskService.createTasks(size).toFlowable().flatMap({})
}

结果是一个Flowalbe,您应该调用flatMap而不是map,以便将发出的内部函数解压到一个平面结果中:

代码语言:javascript
复制
Flowable<Boolean> checkTriggerDaily() {

    List<Bson> fields = new ArrayList<Bson>();
    fields.add(exists("dueDate", true));
    Bson filter = and (fields);

    Flowable.fromPublisher(marketplaceMongoService.getCollection().find(filter))
        .flatMap { third -> // flatMap instead of map
            getTheReport(third.id).flatMap { size ->
                TaskService.createTasks(size).toFlowable().flatMap({})
            }
        }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72370826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档