kotlin flow zip 使用
Flow.zip函数用于将两个Flow流合并成一个新的Flow流,并按顺序将每个流中的元素逐对合并。
具体用法如下:
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.flow.zip
fun main() {
val flow1 = flowOf(1, 2, 3)
val flow2 = flowOf("A", "B", "C")
val zipFlow = flow1.zip(flow2) { num, str ->
"$num$str"
}
zipFlow.collect { println(it) }
}
在上面的示例中,我们定义了两个Flow流flow1和flow2,分别包含整数和字符串元素。然后使用zip函数将两个流合并,并通过lambda函数将每个流中的元素逐对合并成一个新的字符串。最后使用collect函数来收集并打印合并后的元素。
运行上述代码,输出结果如下:
1A
2B
3C
这样,我们就成功地将两个Flow流合并成一个新的Flow流,并按顺序将每个流中的元素逐对合并
原文地址: https://www.cveoy.top/t/topic/hWXD 著作权归作者所有。请勿转载和采集!