图解.png (68.36 KB, 下载次数: 29)
a, switch语句选择的类型只有四种:byte,short,int ,char。之后枚举也是可以的了,在jdk7.0之后也可以用字符串的类型了,其实底层用的也是int类型的,因为是将字符串变成了hashCode()的类型。所以也就是说变成了int类型的了。
b,case之间与default没有顺序。先执行第一个case,没有匹配的case执行default。
c,结束switch语句的两种情况:遇到break,执行到switch语句结束。
d,如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束。
复制代码
- <p>public class Demo8 {
- public static void main(String []args){
- int x=1;
- switch(x)
- {
- default: //冒号<font color="red"> 没有找到匹配的case语句,执行此句</font>
- System.out.println("d");
- // break; <font color="red">这儿的break;语句没有起到作用,所以继续向下执行case100语句</font>
- case 100: //为什么 不满足条件case 4 还打印出来了 aaaa
- {System.out.println("aaaa");
- break;}
- case 6:
- {System.out.println("b");
- break;}
- case 7:
- {System.out.println("c");
- break;}
- }
- }
- }</p>
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |