格式


  • 形式一

    1. switch var1 {
    2. case val1:
    3. ...
    4. case val2, val3, val4:
    5. ...
    6. fallthrough
    7. default:
    8. ...
    9. }
  • 形式二

    1. //不提供被判断的值
    2. //这种形式还挺好:)
    3. switch {
    4. case i < 0:
    5. f1()
    6. case i == 0:
    7. f2()
    8. case i > 0:
    9. f3()
    10. }
  • 形式三

    1. //提供初始化语句的
    2. switch initialization {
    3. case val1:
    4. ...
    5. case val2:
    6. ...
    7. default:
    8. ...
    9. }

    值得注意的地方


  • var1可以是任何类型,val可以是同类型的任意值
  • { 必须和switch关键字在同一行
  • 不需要 使用 break 语句来表示结束,因为Go语言是不会默认自动执行下一条语句的。
    • 当然,可以使用 fallthrough 进行击穿,一个 fallthrough 关键字击穿一条