Go only runs the selected case, not all the cases that follow. In effect, the break statement that is needed at the end of each case in those languages is provided automatically in Go.
package main import ( "fmt" ) func main() { var age int = 29 switch { case age < 25: fmt.Println("age is less than 25") fallthrough case age < 30: fmt.Println("age is less than 30") fallthrough case age < 35: fmt.Println("age is less than 35") case age < 40: fmt.Println("age is less than 40") } }
Output
age is less than 30 age is less than 35
使用上請注意不能在最後一個 case 使用 fallthrough 不然會發生錯誤。
cannot fallthrough final case in switch