首先,你要先了解switch语句的用法。
switch(表达式)
{
case 常量表达式1:语句1; break;
....
case 常量表达式n:语句n; break;
default:语句;break;
}
1、default就是如果没有符合的case就执行它,default并不是必须的.
2、case后的语句可以不用大括号.
3、switch语句的判断条件可以接受int,byte,char,short,枚举,不能接受其他类型.
4.、都没有break 语句的情况下:首先会在所有的case 语句中,寻找满足条件的语句。如果找到,会从该语句顺序向下执行每个语句;若找不到,会从第一段开始,向下顺序执行每一段语句。
5、在有break 语句的情况下:首先找到一个满足条件的case 语句执行,若找不到,会执行default 的语句。
你现在的程序是属于第4点的错误,要理解用法。所以会出现的错误跟一楼所说的现象。
|
|