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)課程。