Java Switch 案例講解

介紹

條件語句和邏輯語句是任何程序的核心組成部分。代碼主要由一系列條件及其可能的輸出組成。在幾乎每種編程語言中,Switch case 語句都是常見的條件語句之一。

目錄

Java中的Switch case

Switch case 在Java中非常常見。它是一種多路分支語句,能夠根據(jù)表達式的值執(zhí)行不同部分的代碼。表達式可以是 byte、short、char 和 int 原始數(shù)據(jù)類型。從 JDK7 開始,它也可以用于 Java 中的枚舉(Enum)數(shù)據(jù)類型、String 類和包裝類。

以下是 Java 中 switch case 的語法:

switch(變量或整數(shù)表達式)
{
    // case 語句
    case 值1 :
        // 在值1為真的情況下執(zhí)行的語句
        break; // 可選
    case 值2 :
        // 在值2為真的情況下執(zhí)行的語句
        break; // 可選
    // 可以添加任意數(shù)量的 case 語句
    // 可選的 default 語句通常寫在最后
    default :
        // 當(dāng)沒有 case 匹配時執(zhí)行的語句
        break; // 可選
}

盡管是可選的,break 語句通常在 Java 中的 switch case 里使用。

 

若你想提升Java技能,可關(guān)注我們的Java培訓(xùn)課程。

下面是一個展示簡單 switch case 的 Java 代碼片段:

public class SwitchCase_Example1 {
    public static void main(String args[]){
        int num = 10;
        switch(num * 5 + num)
        {
            case 20:
                System.out.println("Option 1: The Value is: "+num);
            case 40:
                System.out.println("Option 2: The Value is: "+num);
            case 60:
                System.out.println("Option 3: The Value is: "+num);
            default:
                System.out.println("Default Case: The Value is: "+num);
        }
    }
}

輸出:

Option 3: Value is 60

在上面的 switch case 中,switch 表達式是 "num * 5 + num",其中 num 為 10,表達式的結(jié)果是 10 * 5 + 10,也就是 60。第三個 case 的值是 60,因此這個 case 被執(zhí)行。雖然在 Java 中 default case 是可選的,但如果沒有定義匹配值的 case,default case 就會被執(zhí)行。

Java中 switch case 的 break 語句

break 語句是可選的,且不需要在所有條件下都使用。話雖如此,在某些場景中使用 break 語句是至關(guān)重要的,以實現(xiàn)邏輯上準(zhǔn)確的輸出。

請參見以下沒有使用 break 語句的 Java switch case 示例:

public class SwitchCase_Example2a {
    public static void main(String[] args) {
        int day = 4;
        switch (day) {
            case 1:
                System.out.println("Monday");
            case 2:
                System.out.println("Tuesday");
            case 3:
                System.out.println("Wednesday");
            case 4:
                System.out.println("Thursday");
            case 5:
                System.out.println("Friday");
            case 6:
                System.out.println("Saturday");
            case 7:
                System.out.println("Sunday");
            default:
                System.out.println("Incorrect Number");
        }
    }
}

輸出:

Thursday
Friday
Saturday
Sunday

在上面的代碼中,我們將整數(shù)值4傳遞給switch,它本應(yīng)執(zhí)行 case 4。然而,由于 case 4 后沒有 break 語句,導(dǎo)致程序流繼續(xù)執(zhí)行后續(xù)的 case,最終打印出 Thursday 之后的所有天。這個問題的解決方案是使用 break 語句。

break 語句用于控制程序流,它指示程序流在執(zhí)行完當(dāng)前 case 后直接跳出 switch 語句體,忽略其后的所有 case。

現(xiàn)在,看看帶有 break 語句的相同 Java switch case 示例:

public class SwitchCase_Example2b {
    public static void main(String[] args) {
        int day = 4;
        switch (day) {
            case 1:
                System.out.println("Monday");
                break;
            case 2:
                System.out.println("Tuesday");
                break;
            case 3:
                System.out.println("Wednesday");
                break;
            case 4:
                System.out.println("Thursday");
                break;
            case 5:
                System.out.println("Friday");
                break;
            case 6:
                System.out.println("Saturday");
                break;
            case 7:
                System.out.println("Sunday");
                break;
            default:
                System.out.println("Incorrect Number");
        }
    }
}

輸出:

Thursday

現(xiàn)在你可以看到,只執(zhí)行了 case 4,其他 case 被忽略。因此,屏幕上只會打印 Thursday。

總結(jié)

我們已經(jīng)討論了有關(guān)如何實現(xiàn) Java switch 語句的所有內(nèi)容。如果使用得當(dāng),Java 中的 switch case 語句可以為執(zhí)行條件提供無限可能。它可以與循環(huán)或其他條件語句一起使用,以創(chuàng)建高效且健壯的 Java 代碼。

 

若你想提升Java技能,可關(guān)注我們的Java培訓(xùn)課程。