精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
if语句可以把几个变量的值结合生成判断结果,这种结合有时候不好理解,并且在某些场合下不适用。比如依据某个变量的值来进行判断,值是某个结果,则执行一段代码,比如:
if(i==1) {A}
else if(i==2) {B}
else if(i==3) {C}
在if是1时执行A,2执行B,3执行C,这种形式是单个变量的分支控制,这时候判断值少,用if还方便,如果很多,用if就累了。用switch方便,上面的if代码段可以转为:
switch(i)
{
case 1: A;break;
case 2:B;break;
case 3:C;break;
}
用了switch,则少输入了一些字,也多输入了一些字。但是从意思上看非常直观了。初学者要理解本段话,在判断单个变量值来执行分支时,要用switch语句。
break是跳出的意思,不管是循环的break还是switch的break,都是跳出,但是switch的break只是跳过后面的分支。如果没有break,后面的分支还是会执行。比如上面示例里case 1行没有break,则i等于1时,既执行了A也执行了B。
初学者往往会忘记写break,这样多个分支都执行,结果就变的不可捉摸了。
不一样不执行的。分支的意思是,每次运行只会运行一个分支的。另外一个情况时,如果你的case后面不带break,则会顺序执行下个分支,不一样也会执行。
这里面break是关键。
你可以不写break,写个switch语句看看效果
你的意思是break写的话不一样不执行,不写的话,不一样也要执行吗?
对。