1、用途
用于多分支选择,相当于使用多个If。如下图
当分支少于3条时,使用If比较简洁,但是当分支数较大时,使用If就会显得程序可读性不强,比较冗余。这种情况下,使用switch比较简洁。
2、基本形式
swtich(变量或表达式)
{
case 常量1: 语句块1;break;
case 常量2: 语句块2;break;
case 常量3: 语句块3;break;
…
case 常量n: 语句块n;break;
default:语句块n+1;
}
各个语句的执行顺序如下:
当变量或表达式的量与其中一个case语句中的常量相符时,就执行此case后面的语句,并依次向下执行后面所有case中的语句,除非遇到break语句就会跳出swtich语句为止。如果变量或者表达式都不相符,就会执行default后面的语句。
2、易错点
1)每个常量表达式的值必须各不相同,否则将会出现矛盾。
2)当表达式的值与case后面的常量表达式值相等时,就执行此case后面的语句。
3)switch中的表达式可以是整型、字符型表达式或枚举。
4)case 常量:只起语句标号的作用。
5)break语句用于强行跳出switch体,一般每个case后面应有一个break语句,6)default分支后的break可以省略。
7)case后面的break可以省略,但是省略时会顺序执行,指导遇到break就会结束。
8)多个case可以执行一组语句。