Swift instruction switch
Instructions conditionnelles en Swift
switchL'instruction switch permet de tester l'égalité d'une variable par rapport à plusieurs valeurs. En Swift, dès qu'une instruction case correspond, l'ensemble de l'instruction switch termine son exécution.
Syntaxe
La syntaxe d'une instruction switch en Swift est :
switch expression {
case expression1 :
statement(s)
fallthrough /* 可选 */
case expression2, expression3 :
statement(s)
fallthrough /* 可选 */
default : /* 可选 */
statement(s);
}
Généralement, l'instruction fallthrough n'est pas utilisée dans les instructions switch.
Ici, nous devons noter que si l'instruction case n'utilise pas l'instructionfallthrough, alors après l'exécution de l'instruction case en cours, le switch se termine, et le flux de contrôle saute à la ligne suivante après l'instruction switch.
Si l'instructionfallthroughest utilisée, elle continuera d'exécuter les instructions case ou default suivantes, que la condition soit remplie ou non.
Remarque :Dans la plupart des langages, dans un bloc d'instruction switch, case doit être suivi de break ; sinon, les instructions après case s'exécutent séquentiellement. En Swift, par défaut, il ne continuera pas, et le switch se termine également. Si vous voulez que les instructions après case continuent de s'exécuter dans l'ordre en Swift, vous devez utiliser l'instruction fallthrough.
Exemple 1
L'exemple suivant n'utilise pas l'instruction fallthrough :
import Cocoa
var index = 10
switch index {
case 100 :
print( "index 的值为 100")
case 10,15 :
print( "index 的值为 10 ou 15")
case 5 :
print( "index 的值为 5")
default :
print( "默认 case")
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
index 的值为 10 ou 15
Exemple 2
L'exemple suivant utilise l'instruction fallthrough :
import Cocoa
var index = 10
switch index {
case 100 :
print( "index 的值为 100")
fallthrough
case 10,15 :
print( "index 的值为 10 ou 15")
fallthrough
case 5 :
print( "index 的值为 5")
default :
print( "默认 case")
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
index 的值为 10 ou 15 index 的值为 5Autres extensions