English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Tutorial lernen Sie, wie Sie den switch-Ausdruck in Java verwenden, um den Ablauf der Programmausführung zu steuern
In Java verwenden wirif..else..if-LeiterFühren Sie einen Codeblock zwischen mehreren Blöcken aus. Aber die Syntax der if ... else ... if-Leiter ist zu lang.
Daher können wir den switch-Ausdruck anstelle von long verwenden. if ... else ... ifLeiter. Die Verwendung des switch-Ausdrucks macht unseren Code lesbarer.
Die Syntax des switch-Ausdrucks ist:
switch (variable/expression) { case Wert1: // case1 Anweisung break; case Wert2: // case2 Anweisung break; .. .. .. .. .. .. default: // default-Anweisung }
Der switch-Ausdruck bewertet ein expression oder eine variable (Ausdruck oder Variable) und vergleicht sie mit jedem Wert des case-Labels (kann ein Ausdruck sein).
Jetzt wird der gesamte Code der mit der case-Label übereinstimmenden Werte ausgeführt, wenn der Wert mit einem case-Label übereinstimmt.
例如,如果 variable/expression 等于value2。在这种情况下,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); } }
Ausgabe:
这一天是 Mittwoch
在上面的示例中,我们使用switch语句找出一周中的某天。在这里,我们有一个保存整数值的变量week。将该值与switch块case内的每个值进行比较。
这里week的值是4。因此,它与case 4匹配。因此,case 4里面的语句被执行了。
下面的程序从用户那里接受三个输入:一个运算符和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("输入运算符 (选项: +, -, * oder /); //请用户输入运算符 operator = scanner.next().charAt(0); System.out.print("Zahlen einzeln eingeben1und Zahlen2: "); //Benutzer bitten, Zahlen einzugeben number1 = scanner.nextDouble(); number2 = scanner.nextDouble(); switch (operator) { //Zwei Zahlen addieren case "+: result = number1 + number2; System.out.print(number1 + "+" + number2 + " = " + result); break; //Zwei Zahlen subtrahieren case "-: result = number1 - number2; System.out.print(number1 + "-" + number2 + " = " + result); break; //Zwei Zahlen multiplizieren case "*: result = number1 * number2; System.out.print(number1 + "*" + number2 + " = " + result); break; //Zwei Zahlen durchteilen case "/: result = number1 / number2; System.out.print(number1 + "/" + number2 + " = " + result); break; default: System.out.println("Ungültiger Operator!"); break; } } }
Ausgabe:
Geben Sie den Operator ein (Optionen: +, -, * oder /) * Zahlen einzeln eingeben1und Zahlen2: 1.4 -5.3 1.4*-5.3 = -7.419999999999999
In dem obigen Beispiel verwenden wir den switch-Ausdruck, um einen Rechner zu erstellen. Er führt die Berechnung aus, basierend auf dem von Benutzer angegebenen Operator.