Comment briser une boucle externe à l'intérieur d'une structure imbriquée qui répond à l'instruction break
dans Swift?
Par exemple:
while someCondition {
if someOtherCondition {
switch (someValue) {
case 0: // do something
case 1: // exit loop
case 2...5: // do something else
default: break
}
} else {
someCondition = false
}
}
Le break
ne me sortira que du switch
, et dans Swift, il doit être utilisé car les cases vides ne sont pas autorisées. Comment puis-je quitter complètement la boucle depuis switch
?
Swift permet déclarations étiquetées . À l'aide d'une instruction étiquetée, vous pouvez spécifier la structure de contrôle que vous souhaitez break
quelle que soit la profondeur d'imbrication de vos boucles (bien que, généralement, moins d'imbrication soit meilleure du point de vue de la lisibilité). Cela fonctionne également pour continue
.
Exemple:
outerLoop: while someCondition {
if someOtherCondition {
switch (someValue) {
case 0: // do something
case 1: break outerLoop // exit loop
case 2...5: // do something else
default: break
}
} else {
someCondition = false
}
}