English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base Java

Controllo dei flussi Java

Array Java

Oggetti orientati a Java (I)

Oggetti orientati a Java (II)

Oggetti orientati a Java (III)

Gestione delle eccezioni Java

Elenco Java (List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Istruzione switch Java

在本教程中,您将学习如何使用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语句结束。

switch语句流程图

Java switch语句的流程图

示例1:Java 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.

Esempio 2: crea un calcolatore con la struttura switch

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.