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 等于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("Questo giorno è " + day); } }
Output:
Questo giorno è Mercoledì
Nel esempio precedente, abbiamo utilizzato la struttura switch per determinare un giorno della settimana. Qui, abbiamo una variabile che contiene un valore intero week. Confronta questo valore con ogni valore all'interno del blocco case.
Il valore di week è 4. Pertanto, corrisponde a case 4. Quindi viene eseguito il blocco di codice all'interno di case 4.
Il programma seguente accetta tre input dall'utente:un operatoreedue numeri。In base all'operatore fornito dall'utente, calcola questi numeri. Quindi il risultato viene visualizzato sullo schermo.
Prima di esaminare questo programma, è meglio che tu sappia giàJava scannerper accettare l'input dell'utente.
import java.util.Scanner; class Main { public static void main(String[] args) { char operator; Double number1, number2, result; //crea un oggetto della classe Scanner Scanner scanner = new Scanner(System.in); System.out.print("Inserisci l'operatore (opzioni: +, -, *, o /): "); //richiede all'utente di inserire un operatore operator = scanner.next().charAt(0); System.out.print("Inserisci i numeri 1 e 2: "); //richiede all'utente di inserire un numero number1 = scanner.nextDouble(); number2 = scanner.nextDouble(); switch (operator) { //due numeri sommati case '+": result = number1 + number2; System.out.print(number1 + "+" + number2 + "= " + result); break; //due numeri sottratti case '-": result = number1 - number2; System.out.print(number1 + "-" + number2 + "= " + result); break; //due numeri moltiplicati case '*': result = number1 * number2; System.out.print(number1 + "*" + number2 + " = " + result); break; //Divisione di due numeri case '/': result = number1 / number2; System.out.print(number1 + "/" + number2 + " = " + result); break; default: System.out.println("Operatore non valido!"); break; } } }
Output:
Inserisci l'operatore (opzione: +, -, *, o /): * Inserisci i numeri 1 e 2 separatamente: 1.4 -5.3 1.4*-5.3 = -7.419999999999999
Nell'esempio sopra, abbiamo creato un calcolatore utilizzando la frase switch. Esegue calcoli in base all'operatore fornito dall'utente.