Swift - Fallthrough Statement

Instrukcja switch w Swift 4 kończy swoje wykonanie, gdy tylko pierwszy pasujący przypadek zostanie zakończony, zamiast spadać do końca kolejnych przypadków, jak to ma miejsce w językach programowania C i C ++.

Ogólna składnia instrukcji switch w C i C ++ jest następująca -

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);
}

Tutaj musimy użyć break instrukcji case, aby wyjść z instrukcji case, w przeciwnym razie sterowanie wykonaniem przejdzie przez kolejne instrukcje case dostępne pod dopasowaną instrukcją case.

Składnia

Ogólna składnia instrukcji switch w języku Swift 4 jest następująca -

switch expression {
   case expression1 :
      statement(s)
      fallthrough /* optional */
   case expression2, expression3 :
      statement(s)
      fallthrough /* optional */

   default : /* Optional */
      statement(s);
}

Jeśli nie używamy fallthrough instrukcja, program wyjdzie z switchinstrukcja po wykonaniu zgodnej instrukcji case. Weźmy dwa poniższe przykłady, aby wyjaśnić jego funkcjonalność.

Przykład 1

Poniższy przykład pokazuje, jak używać instrukcji switch w programowaniu w języku Swift 4 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")
}

Kiedy powyższy kod jest kompilowany i wykonywany, daje następujący wynik -

Value of index is either 10 or 15

Przykład 2

Poniższy przykład pokazuje, jak używać instrukcji switch w programowaniu w języku Swift 4 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")
}

Kiedy powyższy kod jest kompilowany i wykonywany, daje następujący wynik -

Value of index is either 10 or 15
Value of index is 5

Language