gpt4 book ai didi

rx-java - 如何在 RXJava 中过滤列表

转载 作者:行者123 更新时间:2023-12-04 15:21:53 25 4
gpt4 key购买 nike

我正在尝试过滤 single<list<item>>我从一个方法中得到的

return getList(number)
.filter { it -> it.age } <--- problem
.flatMap { addMoreData(it) }
.map(mapper)

fun getList(number: Int): Single<List<Item>> {
//do so things
}

但在这种情况下我不能这样做因为it有一个 List<Item>而不是 Item .我希望它在 RXJava 中(不想运行循环列表并过滤它的方法)

我该怎么做?

最佳答案

如果getList()返回 Single<List<Item>> , 然后我想 flattenAsObservable 是你想要的:

return getList()
.flattenAsObservable { it -> it } // Turns it into Observable<Item>
.filter { it -> it.age }
.flatMap { addMoreData() }
.map(mapper)

您还可以使用 .flatMapObservable { list -> Observable.fromIterable(list) } , 但有点冗长。

关于rx-java - 如何在 RXJava 中过滤列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63135139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com