English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
本教程では、Javaのswitch文を使用してプログラムの実行フローを制御する方法を学びます。
Javaでは、以下を使用します。if..else..if階段複数のブロック間でコードブロックを実行します。ただし、if ... else ... ifの構文は長くなります。
したがって、switch文を使用してlongを置き換えることができます。 if ... else ... if梯子。switch文の使用により、コードの可読性が向上します。
switch文の構文は以下の通りです:
switch (variable/expression) { case value1: // case1 文 break; case value2: // case2 文 break; .. .. ... .. .. ... default: // default文 }
switch文はexpressionやvariable(表現や変数)を評価し、それを各caseタグの値(表現であれば良い)と比較します。
現在、値が特定のcaseタグと一致する場合、一致するcaseタグのすべての文を実行します。
例えば、variable/expressionがvalueに等しい2。この場合、caseは一致するすべての文を実行します(case2の文)。
注意:各ケースでbreak文を使用してください。break文は、switchの実行を終了するために使用されます。
これは重要です。break文を使用しない場合、caseの後のすべての文が順序に実行され、switch文が終了するまで続きます。
class Main { public static void main(String[] args) { int week = 4; String day; // switch文を使って曜日を判断します switch (week) { case 1: day = "Sunday"; break; case 2: day = "Monday"; break; case 3: day = "Tuesday"; break; //星期的値に一致します case 4: day = "Wednesday"; break; case 5: day = "Thursday"; break; case 6: day = "Friday"; break; case 7: day = "Saturday"; break; default: day = "Invalid day"; break; } System.out.println("それは「" + day); } }
出力:
それは水曜日です
上記の例では、switch文を使って週の特定の日を特定しました。ここでは、整数値を保存する変数weekがあります。この値をswitchブロック内の各値と比較します。
ここではweekの値は4。したがって、それはcase 4に一致しました。したがって、case 4内の文が実行されます。
以下のプログラムは、ユーザーから3つの入力を受け取ります:の演算子と2の数字。ユーザーが提供した演算子に基づいて、これらの数字を計算します。その後、結果がスクリーンに表示されます。
このプログラムをブラウズする前に、以下のことを理解しておくと良いでしょう。Javaのscannerユーザーの入力を受け取ります。
import java.util.Scanner; class Main { public static void main(String[] args) { char operator; Double number1, number2, result; //Scannerクラスのオブジェクトを生成します Scanner scanner = new Scanner(System.in); System.out.print("演算子を入力してください (オプション: +, -, * または /); //ユーザーに演算子の入力を求めます operator = scanner.next().charAt(0); System.out.print("それぞれの数字を入力します1と数字2: "); //ユーザーに数字の入力を求めます number1 = scanner.nextDouble(); number2 = scanner.nextDouble(); switch (operator) { //二つの数字を足します case+: result = number1 + number2; System.out.print(number1 + "+" + number2 + "=" + result); break; //二つの数字を引きます case-: result = number1 - number2; System.out.print(number1 + "-" + number2 + "=" + result); break; //二つの数字をかけます case*: result = number1 * number2; System.out.print(number1 + "*" + number2 + "=" + result); break; //二つの数字を割る case/: result = number1 / number2; System.out.print(number1 + "/" + number2 + "=" + result); break; default: System.out.println("Invalid operator!"); break; } } }
出力:
演算子を入力(オプション: +, -, * または /) * それぞれの数字を入力します1と数字2: 1.4 -5.3 1.4*-5.3 = -7.419999999999999
上記の例では、switch文を使用して計算機を作成しました。ユーザーが提供した演算子に応じて計算が行われます。