通过不同的情况切换相同操作的语句语法

coc*_*oco 4 c objective-c switch-statement

两个常量(1 + 2)共享相同的case语句.我不想加倍代码.

这样做的正确语法是什么?

switch (expression) {
        case 0:
            [self taskA];
            break;
        case 1:
            [self taskB];
            break;
        case 2:
            [self taskB]
            break;
        default:
            break;
    }
Run Code Online (Sandbox Code Playgroud)

Ano*_*dya 10

使用 :

switch (expression) {
    case 0:
        [self taskA];
        break;
    case 1:
    case 2:
        [self taskB];
        break;
    default:
        break;
}
Run Code Online (Sandbox Code Playgroud)

编辑1:

switch我们说一个术语叫做落空.每当控制到达一个标签时说它case 0:一直落到break被发现之前.在break控制发送到闭幕括号switch.

如果break没有遇到它关系到未来casecase随后case 2.所以上面case 1case 2分享一个break声明.