- switch语句可接受的数据类型及举例:
byte b = 1;
switch (b) {
case 1:
System.out.println("匹配1");
break;
default:
System.out.println("不匹配");
}
- `short`:
short s = 2;
switch (s) {
case 2:
System.out.println("匹配2");
break;
default:
System.out.println("不匹配");
}
- `int`:
int i = 3;
switch (i) {
case 3:
System.out.println("匹配3");
break;
default:
System.out.println("不匹配");
}
char c = 'a';
switch (c) {
case 'a':
System.out.println("匹配a");
break;
default:
System.out.println("不匹配");
}
enum Weekday {
MONDAY, TUESDAY, WEDNESDAY
}
Weekday day = Weekday.MONDAY;
switch (day) {
case MONDAY:
System.out.println("周一");
break;
default:
System.out.println("其他");
}
String str = "hello";
switch (str) {
case "hello":
System.out.println("匹配hello");
break;
default:
System.out.println("不匹配");
}
- 当switch语句中没有匹配的case时:
- 如果没有匹配的
case
且没有default
语句,switch
语句将不执行任何case
分支中的代码,直接结束switch
语句。
- 如果有
default
语句,当没有匹配的case
时,会执行default
分支中的代码。例如上述代码中的default
分支输出“不匹配”。default
语句一般作为一种兜底机制,用于处理未预料到的情况。