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