通过不同的情况切换相同操作的语句语法
两个常量(1 + 2)共享相同的case语句。 我不想加倍代码。
这样做的正确语法是什么?
switch (expression) { case 0: [self taskA]; break; case 1: [self taskB]; break; case 2: [self taskB] break; default: break; }
使用 :
switch (expression) { case 0: [self taskA]; break; case 1: case 2: [self taskB]; break; default: break; }
编辑1:
在switch
我们说一个名为fall-through的术语。 每当控制到达一个标签时,说case 0:
它会一直下降直到找到break
。 break
控制被发送到switch
的闭合括号。
如果没有遇到break
则转到下case
如case 2
。 因此,上述case 1
和case 2
共享一个break
声明。
如果在案例结束时未使用break或return,则多个case标签可以引用相同的语句。 如果在案例1中不使用break语句,则执行流程进入案例2。