Swift - Switch 语句

  • 简述

    Swift 4 中的 switch 语句在第一个匹配的 case 完成后立即完成其执行,而不是像在 C 和 C++ 编程语言中那样落入后续 case 的底部。以下是 C 和 C++ 中 switch 语句的通用语法 -
    
    switch(expression){
       case constant-expression :
          statement(s);
          break; /* optional */
       case constant-expression :
          statement(s);
          break; /* optional */
       /* you can have any number of case statements */
       default : /* Optional */
          statement(s);
    }
    
    这里我们需要使用 break 语句来自case语句,否则执行控制将通过后续 case 下面的语句可用于匹配 case 语句。
  • 句法

    以下是 Swift 4 中可用的 switch 语句的通用语法 -
    
    switch expression {
       case expression1 :
          statement(s)
          fallthrough /* optional */
       case expression2, expression3 :
          statement(s)
          fallthrough /* optional */
       default : /* Optional */
          statement(s);
    }
    
    如果我们不使用 fallthrough 语句,那么程序就会出来 switch执行匹配的 case 语句后的语句。我们将通过以下两个示例来说明其功能。
  • 示例 1

    以下是 Swift 4 编程中不使用 fallthrough 的 switch 语句示例 -
    
    var index = 10
    switch index {
       case 100 :
          print( "Value of index is 100")
       case 10,15 :
          print( "Value of index is either 10 or 15")
       case 5 :
          print( "Value of index is 5")
       default :
          print( "default case")
    }
    
    当上面的代码被编译和执行时,它会产生以下结果 -
    
    Value of index is either 10 or 15
    
  • 示例 2

    以下是带有 fallthrough 的 Swift 4 编程中的 switch 语句示例 -
    
    var index = 10
    switch index {
       case 100 :
          print( "Value of index is 100")
          fallthrough
       case 10,15 :
          print( "Value of index is either 10 or 15")
          fallthrough
       case 5 :
          print( "Value of index is 5")
       default :
          print( "default case")
    }
    
    当上面的代码被编译和执行时,它会产生以下结果 -
    
    Value of index is either 10 or 15
    Value of index is 5