Swift - Fallthrough 语句
-
简述
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 编程中使用 switch 语句 without fallthrough −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
下面的例子展示了如何在 Swift 4 编程中使用 switch 语句 with fallthrough −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