switch 语句由一个控制表达式和多个 case 标签组成.
switch 控制表达式支持的类型有 byte,short,char,int,enum(Java 5),String(Java 7).
switch-case 语句完全可以与 if-else 语句互转, 但通常来说, switch-case 语句执行效率要高.
default 在当前 switch 找不到匹配的 case 时执行. default 并不是必须的.
一旦 case 匹配, 就会顺序执行后面的程序代码, 而不管后面的 case 是否匹配, 直到遇见 break.
1. enum 类型示例:
- public class TestSwitch {
- static enum E {
- A, B, C, D
- }
- public static void main(String args[]) {
- E e = E.B;
- switch (e) {
- case A:
- System.out.println("A");
- break;
- case B:
- System.out.println("B");
- break;
- case C:
- System.out.println("C");
- break;
- case D:
- System.out.println("D");
- break;
- default:
- System.out.println(0);
- }
- }
- }
2. break 语句的巧用: 输出某一年某一个月份的天数
- int year = 2018;
- int month = 8;
- int day = 0;
- switch (month) {
- case 1:
- case 3:
- case 5:
- case 7:
- case 8:
- case 10:
- case 12:
- day = 31;
- break;
- case 2:
- day = 28;
- break;
- case 4:
- case 6:
- case 9:
- case 11:
- day = 30;
- break;
- }
- System.out.println(day);
来源: http://www.bubuko.com/infodetail-2646264.html