MST

星途 面试题库

面试题:Kotlin中Flow API的基本使用

请简要描述Kotlin中Flow的概念,并编写一个简单示例,使用Flow发射1到10的整数,然后在collect中打印出来。
28.2万 热度难度
编程语言Kotlin

知识考点

AI 面试

面试题答案

一键面试

Flow概念

Flow 是 Kotlin 协程中用于异步流处理的核心概念。它类似于 RxJava 中的 Observable,能够异步地发射多个值(数据流)。与序列(Sequence)不同,Flow 适用于异步场景,通过 suspend 函数来发射数据,支持响应式编程模型,在处理异步数据流方面提供了简洁且高效的方式。

示例代码

import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.runBlocking

fun main() = runBlocking {
    val flow: Flow<Int> = flow {
        for (i in 1..10) {
            emit(i)
        }
    }
    flow.collect { value ->
        println(value)
    }
}