大佬教程收集整理的这篇文章主要介绍了Golang switch语句总结,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
switch 条件表达式 { case 常量表达式1: 语句 1 case 常量表达式2: 语句 2 . . . case 常量表达式n: 语句 n default: 语句 n+1 }
执行流程
(1)计算条件表达式的值value
(2)如果value满足某条case语句,则执行该语句,执行完跳出switch语句
(3)如果value不满足所有的case语句:
? (3.1)如果有default,则执行该语句,执行完跳出switch语句
? (3.2)如果没有default,则直接跳出switch语句
注意事项
(1)条件表达式可以是任意Go语言支持的数据类型
(3)不需要break语句
(4)default分支为可选项,但最多只能有一个default分支
(5)如果有两个以上的case分支的常量表达式取得相同的值,则编译会出错
有时在一条case语句中可以对多个条件值进行测试,任意一个条件满足都会执行case语句体
func main() { var test String fmt.Print("请输入一个字符串:") fmt.Scan(&test) switch test { case "c": fmt.Println("c") case "java": fmt.Println("java") case "go","golang": fmt.Println("Hello golang") default: fmt.Println("python") } } // 请输入一个字符串:go // Hello golang // 请输入一个字符串:golang // Hello golang
通常情况下,switch语句检测到符合条件的第一个case语句,就会执行该分支的代码,执行完会直接跳出switch语句。使用 fallthrough
语句,可以在执行完该case语句后,不跳出,继续执行下一个case语句。
func main() { var test String fmt.Print("请输入一个字符串:") fmt.Scan(&test) switch test { case "go": fmt.Println("Hello go") case "golang": fmt.Println("Hello golang") fallthrough case "gopher": fmt.Println("Hello gopher") case "java": fmt.Println("java") } } // 请输入一个字符串:go // Hello go // 请输入一个字符串:golang // Hello golang // Hello gopher
如果switch关键字后面没有条件表达式,则必须在case语句中进行条件判断,即类似于 if else if
语句
func main() { var score int fmt.Print("请输入成绩:") fmt.Scan(&score) switch { case score >= 90: fmt.Println("good") case score >= 80 && score < 90: fmt.Println("well") case score < 80: fmt.Println("ok") } } // 请输入成绩:60 // ok // 请输入成绩:85 // well
平时写Go语言很少用到switch语句,有时候突然用到,一些细节可能又忘了,所以写一篇博客总结一下。
以上是大佬教程为你收集整理的Golang switch语句总结全部内容,希望文章能够帮你解决Golang switch语句总结所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。