Go语言自学系列 | golang switch语句
Posted COCOgsta
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go语言自学系列 | golang switch语句相关的知识,希望对你有一定的参考价值。
视频来源:B站《golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]》
一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!
附上汇总贴:Go语言自学系列 | 汇总_COCOgsta的博客-CSDN博客
go语言中的switch语句,可以非常容易的判断多个值的情况。
go语言中switch语句的语法
switch var1
case val1:
...
case val2:
...
default:
...
go语言中switch语句实例
判断成绩
package main
import (
"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 main
import (
"fmt"
)
func f()
day := 3
switch 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 main
import (
"fmt"
)
func f()
score := 90
switch
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 main
import (
"fmt"
)
func f3()
a := 100
switch a
case 100:
fmt.Println("100")
fallthrough
case 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语句的注意事项
- 支持多条件匹配
- 不同的 case 之间不使用 break 分隔,默认只会执行一个 case。
- 如果想要执行多个 case,需要使用 fallthrough 关键字,也可用 break 终止。
- 分支还可以使用表达式,例如:a>10
以上是关于Go语言自学系列 | golang switch语句的主要内容,如果未能解决你的问题,请参考以下文章