Swift nécessite des instructions de commutation exhaustives et que chaque cas ait un code exécutable.
L'étiquette 'case' dans un 'commutateur' doit avoir au moins une instruction exécutable
Quelqu'un at-il trouvé une bonne manière de gérer les cas où vous ne voulez rien faire? Je peux mettre un println () là-dedans, mais cela semble sale.
Réponses:
Selon le livre , vous devez y utiliser
break
:la source
break
indique que les branches sansbreak
risque de tomber.()
wokrs aussi. Néanmoins je préfèrebreak
car cela rend les choses plus claires. Utilisez le mot-cléfallthroug
pour passer à travers les déclarations.default:
cas. Cela ne semble pas une bonne chose. Je suis également d'accord pour dire que cela suggère la chute du comportement de c, ce qui n'est pas ce que fait Swift (c'est bien de savoir que cela peut tomber).Vous pouvez utiliser une
break
instruction:Exemple modifié à partir de la documentation
la source
Voici une option pour l'instruction null, mais peut-être pas une bonne solution. Je ne trouve pas de déclaration comme python pass
pour le boîtier de commutation, la pause est un meilleur choix.
la source
En plus de ce qui est
break
mentionné dans d'autres réponses, j'ai également vu()
utilisé comme une déclaration de non-opération:À utiliser
()
si vous trouvezbreak
déroutant ou si vous souhaitez enregistrer 3 caractères.la source
La solution la plus propre que j'ai trouvée consiste simplement à inclure votre dernière déclaration dans le boîtier du commutateur par défaut. Cela évite d'avoir à ajouter
break
ou d'autres déclarations inutiles tout en couvrant tous les cas possibles.Par exemple:
la source