Go怎么实现遍历读取数据

Go怎么实现遍历读取数据

这篇文章主要介绍“Go怎么实现遍历读取数据”,在日常操作中,相信很多人在Go怎么实现遍历读取数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go怎么实现遍历读取数据”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Go 遍历通道与关闭通道

Go 通过 range 关键字来实现遍历读取到的数据,类似于与数组或切片。格式如下:

Go怎么实现遍历读取数据

v,ok:=<-ch

如果通道接收不到数据后 ok 就为 false,这时通道就可以使用close()函数来关闭。

实例

packagemain

import(
"fmt"
)

funcfibonacci(nint,cchanint){
x,y:=0,1
fori:=0;i< n;i++{
c <-x
x,y=y,x+y
}
close(c)
}

funcmain(){
c:=make(chanint,10)
gofibonacci(cap(c),c)
// range 函数遍历每个从通道接收到的数据,因为 c 在发送完 10 个
// 数据之后就关闭了通道,所以这里我们 range 函数在接收到 10 个数据
// 之后就结束了。如果上面的 c 通道不关闭,那么 range 函数就不
// 会结束,从而在接收第 11 个数据的时候就阻塞了。
fori:=rangec{
fmt.Println(i)
}
}

执行输出结果为:

0112358132134

到此,关于“Go怎么实现遍历读取数据”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注恰卡编程网网站,小编会继续努力为大家带来更多实用的文章!

发布于 2022-03-29 22:24:29
收藏
分享
海报
0 条评论
28
上一篇:Go的VSCode开发工具怎么安装 下一篇:Go通道缓冲区怎么设置
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码