1、switch语句支持的数据类型
在switch(expression)语句中,expression的数据类型不能是?
A. double
B. char
C. byte
D. short
答案 A。原因是:switch语句支持的类型为byte、short、char、int、以及它们的包装类型。还有枚举 、string(java7)。
总结下来swtich语句支持int类型
- 理由是 byte ,short,char 都可以向上转型为int,且不损失精度。
- 枚举类型有ordinal方法 返回的是int类型
- string的hashcode值是int
- 包装类型底层会自动拆箱,最终也可以向上转型为int
2、switcth语句执行过程
下面程序执行的结果是?(c)
int a = 2;
switch (a) {
case 1:
a += 1;
break;
case 2:
a += 2;
case 3:
a += 3;
break;
case 4:
a += 4;
break;
default:
a = 0;
}
System.out.println(a);
A. 5
B. 6
C. 7
D. 8
分析:switch语句的执行过程是
- 首先通过括号中的值去匹配,如果没有匹配到则执行default。
- 如果匹配到则执行匹配的case语句,如果遇到break 则中断,如果没有break则不管后面是否匹配,顺序执行下去,直至结束。