MST
星途 面试题库

面试题:Kotlin响应式编程中Flow的操作符应用

假设你有一个Flow,它发射一系列的整数。要求使用Flow的操作符,对这些整数进行过滤,只保留偶数,然后将这些偶数平方,最后计算这些平方数的总和并打印。请编写完整代码实现此功能。
41.2万 热度难度
编程语言Kotlin

知识考点

AI 面试

面试题答案

一键面试
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.runBlocking

fun createFlow(): Flow<Int> = flow {
    (1..10).forEach {
        emit(it)
    }
}

fun main() = runBlocking {
    createFlow()
       .filter { it % 2 == 0 }
       .map { it * it }
       .reduce { acc, value -> acc + value }
       .let { println(it) }
}