我在交换机中有多个案例做同样的事情,如下所示:(这是用Java编写的)
case 1:
aMethod();
break;
case 2:
aMethod();
break;
case 3:
aMethod();
break;
case 4:
anotherMethod();
break;
有没有办法可以将案例1,2和3合并为一个案例,因为他们都使用相同的方法?
答案 0 :(得分:18)
case 1:
case 2:
case 3:
aMethod();
break;
case 4:
anotherMethod();
break;
这是有效的,因为当碰巧是案例1(例如)时,它会落到案例2(没有break
语句),然后落到案例3中。
答案 1 :(得分:6)
当然,您可以允许1 {和1}的case
子句部分在此之后,在break
语句之后,对于第3条,然后switch
进行“翻查”:
case 1:
case 2:
case 3:
aMethod();
break;
case 4:
anotherMethod();
break;
答案 2 :(得分:3)
以下是您可以做的最好的事情
case 1:
case 2:
case 3:
aMethod();
break;
case 4:
anotherMethod();
break;
答案 3 :(得分:3)
它被称为“堕落”模式:
case 1: // fall through
case 2: // fall through
case 3:
aMethod();
break;
case 4:
anotherMethod();
break;