1,在golang中,switch默認會包含break。
num := 10
switch num {
case 1:
fmt.Println("輸入的是1")
case 2:
fmt.Println("輸入的是2")
case 3:
fmt.Printf("輸入的是%d\n", num)
case 4:
fmt.Println("輸入的是4")
default:
fmt.Printf("輸入的是其他的%d\n", num)
}
// 輸入的是其他的10
2,fallthrough緊接着的case會無條件執行
num := 2
switch num {
case 1:
fmt.Println("輸入的是1")
case 2:
fmt.Println("輸入的是2")
fallthrough
case 3:
fmt.Printf("輸入的是%d\n", num)
fallthrough
case 4:
fmt.Println("輸入的是4")
default:
fmt.Printf("輸入的是其他的%d\n", num)
}
輸入的是2
輸入的是2
輸入的是4
3, switch中case可以寫多個值
case 3, 30:
4,case可以添加條件
score := 85
switch {
case score > 90:
fmt.Println("優秀")
case score > 80:
fmt.Println("良好")
case score > 70:
fmt.Println("好")
default:
fmt.Println("其他")
}