如何在rxjava中填充和返回对象?

时间:2018-01-24 12:49:57

标签: rx-java reactive-programming rx-java2

如何重写这段代码(我不是非常喜欢.toSingle())?

基本上我想:

  • 创建一个新鲜的对象
  • 使用rx种方法填写
  • 当填充返回Completable.complete()时,我想返回那个填充的对象(作为Single<Stats>)。

    return Single.just(new Stats(player))
                 .flatMap(stats -> fillPlayerStatsCompletable(stats, gamesObservable).toSingle(() -> stats));
    

1 个答案:

答案 0 :(得分:0)

如果您想要返回填充的对象,则需要将fillPlayerStatsCompletable返回类型更改为Single<Stats>

return Single
    .just(new Stats(player))
    .flatMapCompletable(stats -> fillPlayerStats(stats, gamesObservable));

或者,如果您想最终获得Completable,则需要将flatMap更改为flatMapCompletable

return Single
    .just(new Stats(player))
    .flatMapCompletable(stats -> fillPlayerStatsCompletable(stats, gamesObservable));