私は比較的新しいjavaです。 switch
ステートメントでは、それぞれcase
の後にbreak
ステートメントを挿入する必要がありますか?switch文のヘルプ
6
A
答えて
5
それぞれのケースの後で中断する必要はありませんが、そうでない場合は、お互いに流れ込みます。時折、休憩を外すことによって、複数のケースをまとめてバンドルしたい場合があります。
3
これは良いことです。さもなければ、次のステートメントも実行されます。
switch(someNumber) {
case thisCaseMatches:
doThat();
case thisCaseDoesNotMatch:
shouldntExecuteYetItWillBeExecuted();
default:
alsoWillbeExecuted();
}
2
意味論的にはい。そうしないと、最初に一致した後のすべてのcase文が実行されます。
7
いいえ、必要はありません。ただし、break
ステートメントを省略すると、ブロック内の残りのステートメントはすべて、テストされているcase
の値にかかわらず実行されます。
これは、次のコードのように、時には望ましくない結果を生むことができます。
switch (grade) {
case 'A':
System.out.println("You got an A!");
//Notice the lack of a 'break' statement
case 'B':
System.out.println("You got a B!");
case 'C':
System.out.println("You got a C.");
case 'D':
System.out.println("You got a D.");
default:
System.out.println("You failed. :(");
}
あなたが「A」にgrade
変数を設定した場合、これはあなたの結果のようになります。
You got an A!
You got a B.
You got a C.
You got a D.
You failed. :(
3
あなたがやりますステートメントをreturn
などで終了していない場合は、
2
各ステートメントの後に改行を入れることをお勧めします。
あなたは強制されていません。
しかし、あなたがswitch文をカスケードした、つまりより多くの条件が一致する可能性があり、時には論理エラーにつながる可能性があります。
しかし、カスケード文がコードを最適化し、コードを少なく書くことができると考える人がいます。
+0
「良い習慣」ではなく、意味的に必要ですか? –
関連する問題
- 1. switch文
- 2. switch文
- 3. C++のswitch文
- 4. C#のswitch文
- 5. Javaのswitch文
- 6. switch文のブレークメニュー
- 7. PHPのswitch文
- 8. switch文のif文をwithからswitch文に変更する
- 9. PHPのswitch case文
- 10. ガスx86の:switch文
- 11. PHP switch文のエラー
- 12. JavaScriptのswitch文は
- 13. switch文のJacocoカバレッジ
- 14. switch文中のmpdf
- 15. C++ switch文のエラー
- 16. Objective-Cのswitch文
- 17. groovy switch文のリストマッチング
- 18. switch文8
- 19. は、switch文
- 20. PHP switch()文
- 21. C++ fizzbuzz switch文?
- 22. Java switch文
- 23. c switch文
- 24. switch文とisset
- 25. switch文C++
- 26. Javascript switch文?
- 27. リファクタリングjava switch文(ブラックジャック)
- 28. Javascript ifとswitch文
- 29. EXC BADアクセスswitch文
- 30. 私のswitch文のエラーメッセージ?
http://download.oracle.com/javase/tutorial/java/nutsandbolts/switch.html –