我有一个问题,我想做三件事之一...... 如果x的值为1-5(含),则执行A,如果x介于6-13(含)之间,则执行B,如果x介于14-16之间执行C.
我认为开关盒是可以的,虽然我想我可以使用普通的IF / ELSE IF,但是,正如我编码的那样,我不禁想到有一种更优雅的方式来说明使用开关/案例(以防万一我遇到类似的需求,有三个以上的选项)。
这就是我所拥有的:
switch ( x ) {
case 1:case 2:case 3:case 4:case 5:
// DO A
break;
case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:
// DO B
break;
case 14:case 15:case 16:
// DO C
break;
}
在这种情况下是否有办法指定“之间”(包含或排他)?
感谢
答案 0 :(得分:6)
不。 Switch语句旨在与单constant values一起使用。除非the comparison is such that the value can be modified to conform to that rule,否则唯一的选项是您已经使用if/else if/else
,AFAIK编写的内容。在大多数情况下,后者比IMO的一堆硬编码case
陈述更清晰。