ホームページ > Java > &#&チュートリアル > Java の Case ステートメント

Java の Case ステートメント

WBOY
リリース: 2024-08-30 15:24:19
オリジナル
1165 人が閲覧しました

プログラミング中に、さまざまな条件でさまざまなアクションを処理するのは非常に困難です。 Java や他の多くのプログラミング言語では、if-else、if-else-if などのステートメントがさまざまな条件で使用されます。しかし、条件ごとに個別のアクションが必要なシナリオが「n」個ある場合はどうなるでしょうか?この時点で複数の if ステートメントと else-if ステートメントを使用すると、条件ごとに複数の中括弧とステートメントのセットが含まれるため、コード内のどこかの時点でプログラマが混乱する可能性があります。 Java でこのような状況に対処するには、プログラマーの利便性を高め、コード行と複雑さを軽減するために Switch-Case ステートメントが使用されます。

switch ステートメントは分岐ステートメントです。 case は、Switch ステートメントで使用されるキーワードです。式の値が case 値と一致した場合にステートメントの実行が実行され、特定のステートメントのコードが Break キーワードによって終了します。 Java の Case 値には、byte、int、short、byte データ型を使用できます。 Java JDK7 では、case の値を String、Wrapper、および列挙型にすることもできます。 Case の値のいずれかが式と一致しない場合は、デフォルトのステートメントが実行されます。ただし、Switch-Case ステートメントでは、default キーワードと Break キーワードは必須ではありません。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

Java では Case ステートメントはどのように機能しますか?

上で説明したように、特定の Switch ステートメント内の Case は、式の値が Case 値と一致したときに実行されます。いずれの値も case 値と一致しない場合は、Switch ブロックで定義されたデフォルトのステートメントが実行されます。それ以外の場合は何も実行されません。

要約すべき重要なポイント:

  • さまざまな条件に応じて、プログラム内に複数のスイッチ ブロックが存在する場合があります。
  • 単一の Switch ブロック内に任意の数の Case ステートメントを含めることができます。
  • Case ステートメント内の重複した値は許可されません。
  • switch ステートメントの変数のデータ型は、Case ステートメントの値と同じである必要があります。
  • Case 値には変数を使用できません。値は定数またはリテラルです。
  • 各 Case の Break キーワードは、その Case の特定のステートメントのシーケンスを終了するために使用されます。どの case ステートメントでもブレークが使用されていない場合、エラーは発生しません。代わりに、一致するケースに続くすべてのケースが実行されます。
  • Beak およびデフォルトのキーワードは、Switch ブロックではオプションです。

Java の Switch Case ステートメントの構文

switch (expression)
{
// case statements
// same data type for switch expression and case value Case value1:
//Statement /statements to be executed
break;
case value 2:
//Statement /statements to be executed
break;
case value'n':
//Statement /statements to be executed
break;
// There can be as many Cases as the user wants in a Switch block
//default is an optional case and executed if none of the case values matches the expression
default:
//statement
}
ログイン後にコピー

Switch Case ステートメントのフロー図

上記のフロー図は、Java で Switch ステートメントと Case ステートメントがどのように機能するかを明確に示しています。 Switch ステートメントで定義された式の一致が先頭から最後のステップまで Case 値とどのように一致するかを示します。値が最後のステップまで一致しない場合、つまり、すべてのケースの最後に false が返された場合、「default」内のコードが実行されます。いずれかの case の値が式と一致する場合、つまりいずれかの Case ステートメントで「true」が返された場合、特定のブロックのコードが実行され、実行は Switch ブロックを終了します。

Java の Case ステートメント

Java での Case ステートメントの例

以下の例は、Java で Case ステートメントがどのように機能するかを明確に示しています。

例 #1

Switch 式の値が Case 値と一致する場合

コード:

public class MyClass {
public static void main(String args[]) {
int value = 8;
switch (value)
{
case 3:
System.out.println("Congratulations here is the case 3 executed"); break;
case 4:
System.out.println("Congratulations here is the case 4 executed"); break;
case 8:
System.out.println("Congratulations here is the case 8 executed"); break;
default:
System.out.println("Sorry none of your cases matched"); break;
}
}
}
ログイン後にコピー

出力:

Java の Case ステートメント

例 #2

Switch 式に一致する値がない場合

コード:

public class MonthClass {
public static void main(String args[]) {
int month= 13;
switch (month)
{
case 1:
System.out.println("Month is January"); break;
case 2:
System.out.println("Month is February"); break;
case 4:
System.out.println("Month is April");
break;
default:
System.out.println("Sorry either the value you have given is invalid or not matched with any of the case.");
break;
}
}
}
ログイン後にコピー

出力:

Java の Case ステートメント

例 #3

Case ステートメントに Break キーワードが欠落している場合

コード:

public class VowelClass{
public static void main(String args[]) {
char ch = 'a';
switch (ch)
{
case 'e':
System.out.println("Value matched - e, a vowel\n"); break;
case 'a':
System.out.println("Value matched - a, a vowel"); case 'w':
System.out.println("Value matched - w, not a vowel"); case 'o':
System.out.println("Value matched - o, a vowel"); default:
System.out.println("Sorry none of your cases matched"); break;
}
}
}
ログイン後にコピー

出力:

Java の Case ステートメント

例 #4

スイッチブロックにデフォルトブロックがない場合

コード:

public class NoOutputClass {
public static void main(String args[]) {
char grades = 'D';
switch (grades)
{
Case 'A':
System.out.println("Grade A - Excellent");
break;
case 'B':
System.out.println("Grade B - Good");
break;
case 'C':
System.out.println("Grade C - Poor");
break;
}
}
}
ログイン後にコピー

出力:

Java の Case ステートメント

結論

上記の記事では、switch ステートメントのほぼすべてのシナリオと、それによって生成される出力について説明しました。 Switch ステートメントの作業は非常に簡単ですが、いくつかの間違いが行われると予期しない結果が生じる可能性があるため、プログラマーは作業する前にそれをよく理解しておく必要があります。通常、Switch は、特定の条件でアクションを実行する必要があり、条件が多数あるシナリオで使用する必要があります。条件が 2 ~ 3 つだけの場合は、if-else -if ステートメントを使用して解決できます。

おすすめ記事

これは Java の Case ステートメントのガイドです。ここでは、Java の Switch-Case ステートメントのフロー図と構文を例とともに説明します。詳細については、他の推奨記事を参照することもできます –

  1. Java のスター パターン
  2. Java のフレームワーク
  3. 最高の Java コンパイラー
  4. JavaScript の Case ステートメント

以上がJava の Case ステートメントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート