Kesa...小于 1 分钟

5.3 switch 结构

5.3.1 形式1

switch var1 {
case val1:
    // ...
case val2:
    // ...
default:
    // ...
}
  • switch var1: 变量可以是任意类型

  • case:

    • val1: 必须是和变量相同类型的值

    • 当匹配到此 case 时,自动退出,不需要使用 break

    • fallthrough: 希望继续执行可添加 fallthrough

      switch i {
      case 0:
          fallthrough
      case 1:
          // ...
      }
      
    • return: 可以通过 return 来退出

      switch i {
      case 0:
          return 
      case 1:
          // ...
      }
      
  • default: 当没有任何匹配时执行

5.3.2 形式2

switch 不提供被判断的值,而在 case 中测试不同条件

switch {
    case condition1:
    // ...
    case condition2:
    // ...
    default:
    // ...
}
switch {
	case i < 0:
    // ...
    case i == 0:
    // ...
    default:
    // ...
}

5.3.3 形式3

switch 包含初始化语句:

switch initialization {
    case val1:
    // ...
	case val2:
    // ...
    default:
    // ...
}
switch a, b := arr[i], arr1[j] {
	case a < b:
    // ...
    case a == b: 
    // ...
    case a > b:
    // ...
}
上次编辑于:
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.2