6
votes

Aide avec l'énoncé de commutateur

Je suis relativement nouveau à Java. Dans une instruction SWITCH , devez-vous mettre une instruction break après chaque cas ?


6 Réponses :


5
votes

Vous n'avez pas à casser après chaque cas, mais si vous ne le faites pas, ils couleront dans l'autre. Parfois, vous voulez regrouper plusieurs cas ensemble en laissant les pauses.


0 commentaires

3
votes

C'est mieux que vous faites. Sinon, les instructions suivantes seront également exécutées.

switch(someNumber) {
case thisCaseMatches:
    doThat();
case thisCaseDoesNotMatch:
    shouldntExecuteYetItWillBeExecuted();
default:
    alsoWillbeExecuted();
}


0 commentaires

2
votes

sémantiquement oui. Sinon, toutes les déclarations de cas après le premier correspondant à courir.


0 commentaires

7
votes

Non, vous n'êtes pas obligé. Si vous omettez l'instruction BREAK , toutefois, toutes les instructions restantes à l'intérieur du bloc Butine sont exécutées, quelle que soit la valeur testé avec.

Ceci peut produire des résultats indésirables parfois, comme dans le code suivant: xxx

si vous définissez la variable de grade ', ce serait votre résultat: xxx


0 commentaires

3
votes

Vous faites si vous ne quittez pas l'instruction Switch avec un retour ou une autre action.


0 commentaires

2
votes

C'est une bonne pratique pour mettre la pause après chaque déclaration.

Vous n'êtes pas forcé.

Mais si vous ne mettez pas de pause vous-même, votre relevé de commutateur en cascade, à savoir plus de condition pourrait être égalée, et cela peut parfois conduire à des erreurs logiques.

Cependant, il y a des gens qui pensent que les instructions en cascade peuvent optimiser le code, aidant à écrire moins de code.


1 commentaires

Ce n'est pas (seulement) "bonne pratique", il est nécessaire de penser sémantiquement ou non!