coldfusion cfscript,switch / case where case之间的范围

时间:2015-08-10 02:35:33

标签: coldfusion switch-statement

我有一个问题,我想做三件事之一...... 如果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;
}

在这种情况下是否有办法指定“之间”(包含或排他)?

感谢

1 个答案:

答案 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陈述更清晰。