问题描述
我对 collect 函数进行了基本测试以学习 kotlin 流程。
测试过程中发生了一些奇怪的事情,所以我留下了一个帖子
在流程块中,存在输入 3 个相同的发射值的情况。 然后将采集到的数据输出到日志中。
代码内容:
flow {
emit(1)
emit(1)
emit(2)
emit(2)
emit(2)
emit(2)
emit(3)
emit(3)
emit(4)
emit(4)
emit(4)
emit(5)
}.collect {
println(it)
}
结果:
1
1
2
2
3
4
4
5
代码执行 emit(2)
4 次和 emit(4)
3 次。
但是 collect
只包含 2
和 4
2 次。
你知道为什么会这样吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)