Android rxjava3映射器

Android rxjava3映射器,android,kotlin,rx-java,rx-java3,Android,Kotlin,Rx Java,Rx Java3,我在我的项目中使用RxJava3,但我无法编写请求,我已经绞尽脑汁好几个小时了 我有一个列表,有一个函数,它通过流返回一个,我想得到一个 fun getMockTopics(streamId:Long):单个{ 返回Single.just(listOf(主题(1)(“”)) } typealias-SteamTopics=Map 覆盖有趣的getTopics(流:列表):单个{ 返回Observable.fromCallable{streams.filterNotNull()}.flatMap

我在我的项目中使用RxJava3,但我无法编写请求,我已经绞尽脑汁好几个小时了

我有一个列表,有一个函数,它通过流返回一个,我想得到一个

fun getMockTopics(streamId:Long):单个{
返回Single.just(listOf(主题(1)(“”))
}
typealias-SteamTopics=Map
覆盖有趣的getTopics(流:列表):单个{
返回Observable.fromCallable{streams.filterNotNull()}.flatMapIterable{it}
.map{stream->
配对(stream,getMockTopics(streamId=stream.streamId))
}.平面图{
待办事项(“?”)
}
.toMap({it.first},{it.second})
}
有趣的getMockTopics(streamId:Long):可观察{
返回可观察的。just(列表(主题(1)(“”))
}
覆盖有趣的getTopics(流:列表):单个{
返回Observable.fromCallable{streams.filterNotNull()}.flatMapIterable{it}
.flatMap({stream->
getMockTopics(streamId=stream.streamId)
},{流,主题->
配对(流、主题)
}).toMap({it.first},{it.second})
}

这不是java,而是您遇到问题的kotlin?请适当地标记问题
fun getMockTopics(streamId: Long): Single<List<Topic>> {
        return Single.just(listOf(Topic(1, "")))
    }
typealias SteamTopics = Map<Stream, List<Topic>>

override fun getTopics(streams: List<Stream?>): Single<SteamTopics> {
        return Observable.fromCallable { streams.filterNotNull() }.flatMapIterable { it }
            .map { stream ->
                Pair(stream, getMockTopics(streamId = stream.streamId))
            }.flatMap {
                TODO("???")
            }
            .toMap({ it.first }, { it.second })
    }
fun getMockTopics(streamId: Long): Observable<List<Topic>> {
    return Observable.just(listOf(Topic(1, "")))
}

override fun getTopics(streams: List<Stream?>): Single<SteamTopics> {
    return Observable.fromCallable { streams.filterNotNull() }.flatMapIterable { it }
        .flatMap({ stream ->
            getMockTopics(streamId = stream.streamId)
        }, { stream, topics ->
            Pair(stream, topics)
        }).toMap({ it.first }, { it.second })
}