Dan*_*fer 7 kotlin kotlin-flow
Kotlin 流程中的 single() 和 first() 有什么区别?您能举例说明何时使用哪种变体吗?
回答我自己的问题。
first()
将收集流的第一个元素。
val f = flow {
var i = 0
while (true) {
emit(i)
i = i.inc()
}
}.first() // 0
Run Code Online (Sandbox Code Playgroud)
single()
将等待流关闭并返回该方法成功执行必须包含的一个元素。如果流为空或有多个元素,则会抛出异常。
callbackFlow {
send("Hello World")
close()
}.single() // "Hello World"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3492 次 |
最近记录: |