如何替换以下代码?
return Observable.just(player1, player2)
.doOnNext(player -> player.status = // mutate status)
.flatMap(player -> {
playersDao
.savePlayerCompletable(player)
.andThen(Single.just(player));
}
)
;
我不太喜欢如何将player
传递到flatMap
内的lambda中,然后我将其返回Single.just
。我该怎么走?我的想法是,我必须在Observable
中返回更新的玩家(具有不同的状态)。我并不想让saveReport
返回Single
。
编辑:我确实希望返回Flowable<Player>
(因此我不想在RxChain中丢失它们)。
答案 0 :(得分:-1)
使用flatmap完成。
Throwable throwable = Flowable.fromIterable(players)
.doOnNext(request -> request.status == //mutate states)
.flatMapCompletable(savePlayerCompletable::save)
.blockingGet();
if (throwable != null) {
///something went wrong
}
或
return Flowable.fromIterable(players)
.doOnNext(request -> request.status == //mutate states)
.flatMapCompletable(savePlayerCompletable::save);