发表于: 2017-02-27 23:25:11
3 1814
今天完成的事情:
学习switch多值选择结构
明天计划的事情:
学习while语句和do-while语句
遇到的问题:
(求解)我的目的是随机给变量c赋值,然后由if-else if-else多选择结构给字符串变量a赋值,不知道为什么第17行代码出错?
收获:
switch语句
1) switch语句根据表达式值的不同执行不同的操作
2) switch语法形式:
switch(表达式){
case 常量表达式1:语句或语句块1;break;
case 常量表达式2:语句或语句块2;break;
……
case 常量表达式n:语句或语句块n;break;
default:语句或语句块n+1;break;
}
3) case后面只能是常量,不能是变量,而且多个case后面不能出现相同的值
4) switch后面的表达式可以接受:
基本数据类型:byte, short, char, int,也就是能自动转换成int的类型;
例1:int类型
例2:char类型
引用数据类型:枚举,String字符串
5) default不一定要放到最后,放在中间也不会先执行它,首先匹配case,匹配不到才执行default。可以在任意位置,但是建议放在最后。
6) case穿透现象:switch语句会根据表达式的值从相匹配的case标签处开始执行,一直执行到break语句处或者是switch语句的末尾。如果没有break语句,那么就会从表达式的值相匹配的case标签处开始执行,一直执行到switch语句的末尾。这种从一个case处开始,忽略后面的值的匹配,直接运行case内容的现象就是穿透现象。
评论