【问题标题】:RxJava 2.0 - how to emit Observable from CompletablesRxJava 2.0 - 如何从 Completables 发出 Observable
【发布时间】:2019-03-20 04:35:24
【问题描述】:

假设我有类似的东西

Completable doTask();

我想要实现的是一个流,它在 doTask() 完成后发出一个项目 just("Completed")。

对于 Observable,我可以做 doTask().map(f -> just("Completed")); 但是,如果 Completable 在本质上没有发出任何东西的情况下完成,我怎么能做到呢?

【问题讨论】:

  • 使用SingleCompletables 用于无价值终止。
  • 问题是,我无法更改 Completable,因为它是由 api 提供的。也许我可以使用 doTask().toSingleDefault(true).map(t -> just("Completed"))?

标签: rx-java rx-java2


【解决方案1】:

您的评论是对的,但请改用doTask().toSingleDefault("Completed");

【讨论】:

  • 有/没有.complete()有什么区别?
  • 答案只是通用的,在您的特定情况下,它看起来像这样:doTask().toSingleDefault("Completed");
  • 只是提示您不需要使用toSingleDefault(true).map(t -> just("Completed"))
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多