经验之谈-switch结构常见错误的分析与处理
1.缺少break语句
本来只想输出“出任武林盟主”可输出结果为
错误分析:在 switch结构中,每一个case语句块后面如果不写 break语句, switch就会
直接往下面的case语句块运行,直到遇到 break语句为止。上面的代码应该在每个case语句后面都加上beak语句
2.case语句后面常量相同
错误代码片段如下
上面的代码中有两个case2,当计算机选择分支的时候,不能判定是哪一个,因而要将
们后面的常量改成不重复的数
3.case语句后接常量错误
错误代码片段如下:
上面的代码中,case语句后面接的常量值只能是byte shot int char类型 ,不能是其他类型的值
3.6.5 switch与多重i结构比较
switch与多重i结构有很多相同之处,也有不同之处
(1)相同点:都可以实现多分支结构
(2)不同点: switch结构只能处理等值的条件判断,且条件是整型变量或字符变
值判断,一般适合分支多于5个以上的情况:
多重if结构特别适合某个变量处于某个区间
时的情况,如a>60&&a<=80