在Java中,switch語句用于根據(jù)表達(dá)式的值選擇要執(zhí)行的代碼塊。使用switch可以替代使用多個(gè)if-else語句來進(jìn)行條件判斷。
switch語句具有以下結(jié)構(gòu):
switch (expression) {
case value1:
// 執(zhí)行代碼塊1
break;
case value2:
// 執(zhí)行代碼塊2
break;
case value3:
// 執(zhí)行代碼塊3
break;
...
default:
// 默認(rèn)執(zhí)行的代碼塊
break;
}
解釋一下這個(gè)結(jié)構(gòu):
expression
是一個(gè)可計(jì)算出結(jié)果的表達(dá)式,通常是一個(gè)變量或常量。case
后跟著一個(gè)常量表達(dá)式,表示某個(gè)值。如果 expression
的值與 case
的值相等,則執(zhí)行對(duì)應(yīng)的代碼塊。break
用于跳出switch語句,即在執(zhí)行完對(duì)應(yīng)的代碼塊后終止switch語句的執(zhí)行。如果省略 break
,則會(huì)繼續(xù)執(zhí)行下一個(gè)case中的代碼塊,直到遇到 break
或switch語句結(jié)束。default
是可選的,用于當(dāng) expression
的值與所有 case
的值都不匹配時(shí)執(zhí)行的代碼塊。以下是一個(gè)使用switch語句的例子:
int day = 2;
String dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
case 3:
dayName = "Wednesday";
break;
case 4:
dayName = "Thursday";
break;
case 5:
dayName = "Friday";
break;
case 6:
dayName = "Saturday";
break;
case 7:
dayName = "Sunday";
break;
default:
dayName = "Invalid day";
break;
}
System.out.println(dayName); // 輸出 "Tuesday"
在上面的例子中,根據(jù) day
的值,選擇對(duì)應(yīng)的 case
執(zhí)行相應(yīng)的代碼塊,并將結(jié)果賦值給 dayName
。最后,輸出 dayName
的值為 “Tuesday”。如果 day
的值為其他值,將執(zhí)行默認(rèn)的代碼塊,并將 dayName
的值設(shè)為 “Invalid day”。