基本语法
switch 变量(表达式){case 值1:语句块case 值2:语句块......default:语句块}
示例
package mainimport "fmt"func main(){var score int = 69switch score{case 90:fmt.Println("A")case 80:fmt.Println("B")case 70,60,50://1.支持多个条件的匹配//2.不同的case之间不需要breakfmt.Println("C")default:fmt.Println("E")}}//输出:E
switch同if-else相同,也支持一个初始化语句,并用;分隔。
package mainimport "fmt"func main(){switch a := 100; a{case 90:fmt.Println("90")case 100:fmt.Println("100")}}//输出:100
switch语句也可以在case里进行判断
package mainimport "fmt"func main(){a := 100switch{//switch也可以在case里进行判断。case a == 70:fmt.Println("70")case a == 80:fmt.Println("80")case a == 100fmt.Println("100")}}
if和switch比较
if语句更适合区间判断,嵌套使用
switch执行效率更高高,可以将多个满足相同条件的值放在一起,更适合做固定值判断。
