视频来源:B站《golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]》

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!

附上汇总贴:Go语言自学系列 | 汇总_COCOgsta的博客-CSDN博客


go语言中的switch语句,可以非常容易的判断多个值的情况。

go语言中switch语句的语法

switch var1 {case val1:...case val2:...default:...
}

go语言中switch语句实例

判断成绩

package mainimport ("fmt"
)func f() {grade := "A"switch grade {case "A":fmt.Println("优秀")case "B":fmt.Println("良好")default:fmt.Println("一般")}
}func main() {f()
}

运行结果

[Running] go run "d:\SynologyDrive\软件开发\go\golang入门到项目实战\goproject\360duote.com\pro01\test.go"
优秀

多条件匹配

go语言switch语句,可以同时匹配多个条件,中间用逗号分隔,有其中一个匹配成功即可。

package mainimport ("fmt"
)func f() {day := 3switch day {case 1, 2, 3, 4, 5:fmt.Println("工作日")case 6, 7:fmt.Println("休息日")}
}func main() {f()
}

运行结果

[Running] go run "d:\SynologyDrive\软件开发\go\golang入门到项目实战\goproject\360duote.com\pro01\test.go"
工作日

case可以是条件表达式

package mainimport ("fmt"
)func f() {score := 90switch {case score >= 90:fmt.Println("享受假期")case score < 90 && score >= 80:fmt.Println("好好学习吧!")default:fmt.Println("玩命学习!")}
}func main() {f()
}

运行结果

[Running] go run "d:\SynologyDrive\软件开发\go\golang入门到项目实战\goproject\360duote.com\pro01\test.go"
享受假期

fallthrough可以执行满足条件的下一个case

package mainimport ("fmt"
)func f3() {a := 100switch a {case 100:fmt.Println("100")fallthroughcase 200:fmt.Println("200")case 300:fmt.Println("300")default:fmt.Println("other")}
}func main() {f3()
}

运行结果

[Running] go run "d:\SynologyDrive\软件开发\go\golang入门到项目实战\goproject\360duote.com\pro01\test.go"
100
200

go语言中switch语句的注意事项

  1. 支持多条件匹配
  2. 不同的 case 之间不使用 break 分隔,默认只会执行一个 case。
  3. 如果想要执行多个 case,需要使用 fallthrough 关键字,也可用 break 终止。
  4. 分支还可以使用表达式,例如:a>10

Go语言自学系列 | golang switch语句相关推荐

  1. Go语言自学系列 | golang中的if语句

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  2. Go语言自学系列 | golang for循环语句

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  3. Go语言自学系列 | golang中的if else语句

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  4. Go语言自学系列 | golang中的if else if语句

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  5. Go语言自学系列 | golang函数的参数

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  6. Go语言自学系列 | golang关键字continue

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  7. Go语言自学系列 | golang标准库bufio

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  8. Go语言自学系列 | golang开发工具

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

  9. Go语言自学系列 | golang标准库os模块 - File文件读操作

    视频来源:B站<golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]> 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持! ...

最新文章

  1. AliCloudDB for redis应用场景之存储最新N条聊天记录
  2. HibernateTemplate 的常见用法
  3. Mac更新VSCode写权限被拒绝 Cannot update while running on a read-only volume
  4. Apache日志Shell分析
  5. Spring陷阱:事务测试被认为是有害的
  6. wsl2 Ubuntu 18.04 安装 ROS
  7. C# 监控字段_监控交换机选择:千兆/百兆/核心/PoE/光纤交换机选型指南
  8. 02-合并frame
  9. matplotlib简单使用
  10. (53)Verilog HDL上升沿采样
  11. android slidingmenu框架,常用框架之SlidingMenu的使用(基于AndroidStudio)
  12. electron webview 页面加载事件顺序
  13. 「SAP技术」SAP MM 启用了MPN物料管理的物料,物料主数据与源清单数据有啥不同?
  14. 前后端分离的微信小程序--校园二手交易平台
  15. MinGW-w64没有bin文件解决方法
  16. JS 移动端网页特效(一)
  17. 【实验五 一维数组】7-6 sdut- C语言实验-数日子
  18. python把txt导入excel_python如何将txt文件导入excel
  19. iOS开发之Your build settings specify a provisioning profile with the UUID “”, however, no such provisio
  20. Android -- 三种动画(帧动画、View动画、属性动画)

热门文章

  1. mx linux默认字体,MX Linux 17.1初体验
  2. 冰河时代英文台词_即将到来的冰河时代
  3. python将源代码转换成在html可显示的格式,Python实现将HTML转换成doc格式文件的方法示例...
  4. 揭秘BAT等互联网公司的薪酬结构
  5. STM32F03C8T6 MPU6050 标准库
  6. 恺英网络王悦被刑拘,上演“金蝉脱壳”34岁登胡润富豪榜
  7. 【Python爬虫系列教程 31-100】通过scrapy框架、爬取汽车之家宝马5系图片,学习Images管道
  8. 如何攻击网络中的计算机,计算机网络攻击的步骤
  9. java 恶汉和懒汉_java里的 懒汉和恶汉模式-----讲解
  10. 我的歪哥们之不要赖赖叽叽 赔吧!