引言
Java中的switch語句是一種非常有用的語句,可以讓程序根據不同的輸入值來執行不同的代碼塊。switch語句可以大大簡化代碼的編寫,並使代碼易於閱讀和維護。
正文
一、基本用法
switch語句的基本用法如下:
switch (expression) {
case value1:
// code to be executed if expression == value1
break;
case value2:
// code to be executed if expression == value2
break;
...
default:
// code to be executed if expression is different from all the cases
}
其中,expression是要比較的表達式,可以是一個整數,也可以是一個字符,甚至可以是一個字符串。case語句標記了要執行的代碼塊並與表達式的值匹配。當expression的值與case語句中的任何一個值匹配時,與匹配的case語句相關的代碼將會被執行。每個case語句後面必須跟上break語句,以防止多個case語句被執行。如果expression的值不匹配任何一個case語句,則會執行default中的代碼塊。
二、注意事項
在使用switch語句時需要注意以下幾點:
a. case語句需要使用常量值
在Java中,case語句使用的值必須是一個常量值,例如字面值或常量變量。不能使用變量或表達式。
int x = 1;
switch (x) {
case 1: // valid
// code to be executed if x == 1
break;
case 2 * 3: // invalid
// code to be executed if x == 6
break;
case y: // invalid
// code to be executed if x == y
break;
}
b. 每個case語句必須以break結束
每個case語句塊必須以break語句結束,否則程序將會繼續執行下一個case語句,這可能會導致非預期的結果。
int x = 1;
switch (x) {
case 1:
// code to be executed if x == 1
break;
case 2:
// code to be executed if x == 2
case 3:
// code to be executed if x == 2 or x == 3
}
c. default語句塊可選
default語句塊是可選的,如果沒有default語句塊,程序將不會做任何事情,當表達式的值不匹配所有的case語句時。
int x = 5;
switch (x) {
case 1:
// code to be executed if x == 1
break;
case 2:
// code to be executed if x == 2
break;
}
三、示例代碼
下面給出一個示例代碼,演示了如何使用switch語句。這個示例程序會根據用戶輸入的月份輸出相應的天數。
import java.util.Scanner;
public class SwitchExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("請輸入月份:");
int month = scanner.nextInt();
int days = 0;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days = 31;
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
case 2:
days = 28;
break;
default:
System.out.println("非法的月份輸入!");
System.exit(0);
}
System.out.println(month + "月有" + days + "天。");
}
}
結論
switch語句是一種強大的Java語句,可以讓程序根據不同的輸入值執行不同的代碼塊。當我們需要根據輸入值執行不同的代碼塊時,可以考慮使用switch語句,以簡化代碼的編寫和提高代碼的可讀性。
原創文章,作者:PSFIE,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/330421.html
微信掃一掃
支付寶掃一掃