我想知道是否有办法合并开关案例,例如:
switch (value)
{
case 0,1,2:
nslog (@"0,1,2 cases");
break
case 3:
nslog (@"3 cases");
break;
default:
NSLog (@"anything else");
break;
}
我真的很感谢你的帮助
答案 0 :(得分:28)
你的意思是,这样的事情?
switch (value)
{
case 0:
case 1:
case 2:
NSLog (@"0,1,2 cases");
break;
case 3:
NSLog (@"3 cases");
break;
default:
NSLog (@"anything else");
break;
}
你知道,开关盒结构将从相应的case行开始执行大括号内的每一行,直到它到达最后一行或中断。因此,如果您在案例之后没有包含休息时间,它也将继续执行下一个案例。
答案 1 :(得分:1)
或者,您可以这样做......
case 0:
case 1:
case 2:
NSLog();
break;
case 3:
NSLog()
break;
default:
NSLog();
break;
答案 2 :(得分:0)
也可以使用范围(少一点代码)。以下示例说明了它:
switch (value)
{
case 0 ... 2:
NSLog (@"0,1,2 cases");
break
case 3:
NSLog (@"3 cases");
break;
default:
NSLog (@"anything else");
break;
}