在go程序中,switch语句不需要使用break语句来表示结束,go程序在匹配到某个分支后,会执行相应的代码并退出整个switch代码块,如果在执行完某个分支之后还希望继续执行下面的分支,可以使用fallthrough语句,fallthrough语句只对下一个分支有效。

    1. package main
    2. import "fmt"
    3. func main() {
    4. k := 6
    5. switch k {
    6. case 4:
    7. fmt.Println("was <= 4")
    8. fallthrough
    9. case 5:
    10. fmt.Println("was <= 5")
    11. fallthrough
    12. case 6:
    13. fmt.Println("was <= 6")
    14. fallthrough
    15. case 7:
    16. fmt.Println("was <= 7")
    17. case 8:
    18. fmt.Println("was <= 8")
    19. default:
    20. fmt.Println("default case")
    21. }
    22. }

    结果:
    fallthrough - 图1