if(表达式)
语句;
else if(表达式)
语句;
else
语句;
这种语法比较适合分支比较少的,但是要注意如果存在if比较多的时候,会出现悬空else,什么意思呢?你可能到后面回来查代码的时候不知道这个else匹配的是哪个if。else的匹配原则是“最近原则“,匹配一个最近未匹配的if。如果你想让else匹配到你想匹配的if 可以给比你想要的if更进的if加一个{}。
switch常常用于多个分支的情况。配合case和break
switch(整形表达式)
{
case 1:
语句;
case 2:
语句;
......
case n:
语句;
}
switch的括号里必须是整形,不能是float、double类型,假设整形表达式是 2,就是从case 2 开始 同理 3 就是从case 3开始,它与if不同,if是只进行真的语句。而switch是从整形表达式得出的数字开始,下面那些case(整形表达式的出的数+1)也会被执行。如果想要提前结束可以直接给最后一个执行的语句里最后面塞 break就会跳出switch。
最后就是switch和if都是可以套娃的,一套套一套
原文:https://blog.51cto.com/15093095/2609743