课程
/后端开发
/Go
/Go语言第一课
close(ch4)后,下一次循环还会进入case语句吗?就算没有close,ch4也是空的了啊。这里不太明白
2017-08-01
源自:Go语言第一课 7-4
正在回答
其实case可以理解为尝试读取ch4,这时会发生两种情况,一种是读取到数据,一种是没读取到数据,如果读取不到数据,则default条件成立;如果读取到数据,这时又分为两种情况,一种是读取正常的数据,且通道也正常(ok为true);另外一种情况是通道关闭了,这时读取到的值是:e为零值,这里为int的0,然后ok为false,表示通道已经关闭。所以,如果没有close,第三次循环就会又进入 default 语句,然后ch4会再次被赋值,在第四次执行时,再次输出1
慕粉3536494
慕姐9075699 回复 慕粉3536494
case和ch4是否关闭并没有关系,即使ch4关闭,循环依旧会继续执行。
ch4为空和ch4被关闭是两种情况。
qq_YizX_hlsAFP
举报
Go语言入门教程,编程之必备知识扩散,打好Go语言编程基础
1 回答fallthrough语句仅能作为case语句中的最后一条语句出现。并且,包含它的case语句不能是其所属switch语句的最后一条case语句。没有理解这句话是什么意思
2 回答可以多个条件吗
2 回答不明白为什么最后的输出是“Case A.”
2 回答复制答案进去为毛不行的
2 回答第二个 func 里面的()为啥不用把 i 传进去呢
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号