简介
在Go语言中使用switch语句可以对大量的值进行判断,可以说是编写多个 if-else的一种方式。switch语句除了可以对常量进行判断,还可以对表达式进行判断。
案例如下:
package main
import (
"fmt"
)
func main() {
var a = 1
switch a {
case 1:
fmt.Println("study")
case 2:
fmt.Println("golang")
//当没有case匹配时,会执行default语句
default:
fmt.Println("out")
}
}
运行结果如下:
说明:在上述案例中,当没有case匹配时,将会执行default语句。
注意:Go语言规定每个switch只能有一个default分支,它可以放在switch语句的任意位置。
一分支多个值
案例如下:
package main
import "fmt"
func main() {
var a = 1
switch a {
case 1, 2, 3 :
fmt.Println("number")
}
}
运行结果如下:
case后面还可以添加表达式,案例如下:
package main
import "fmt"
func main() {
var a = 8
switch { //这种写法switch后面不再添加判断变量
case a > 5 && a < 10:
fmt.Println(a)
}
}
运行结果如下:
注意:这种写法switch后面不再添加判断变量
fallthrough
在 Go 中执行完一个 case 后会立即退出 switch 语句,fallthrough语句用于标明执行完当前 case 语句之后按顺序执行下一个case 语句。
案例如下:
package main
import "fmt"
func main() {
var a = "study"
switch {
case a == "study":
fmt.Println(1)
fallthrough
case a == "golang":
fmt.Println(2)
}
}
运行结果如下:
注意:fallthrough 必须是 case 语句块中的最后一条语句。
以上就是学习分支选择(switch)的内容,在学习的过程中欢迎大家指正补充,感谢阅读。
下面是个人公众号,分享go语言相关知识。