VBScript Select Case 多路开关语句

1. 多路开关概念

多路开关:1个表达式输入,根据表达式不同的值,选择执行对应的一段代码。 和If ElseIf多分支功能类似,但可读性更好,适合同一个表达式匹配多个不同值的场景。

2. 完整语法

Select Case 表达式
    Case 结果1
        语句1
    Case 结果2
        语句2
    ……
    Case 结果n
        语句n
    Case Else
        语句n+1  '上面所有Case都不匹配时执行
End Select
Code language: PHP (php)

执行流程

  1. 先计算Select Case后面表达式的值
  2. 从上到下依次和每一个Case后的结果比对
  3. 匹配成功,执行该Case内语句;执行完直接跳到End Select,不再继续判断后面Case
  4. 全部Case都不匹配 → 执行Case Else里面的代码Case Else是可选的,建议写上,用来处理未知情况。

3. 示例代码解析

<%
dim a
a = 13
select case a
    case 1
        Response.Write 1
    case 2
        Response.Write 2
    case 12
        Response.Write 12
    case else
        Response.Write "一个都匹配不上执行这里"
end select
%>
Code language: JavaScript (javascript)

执行:a=13,依次对比1、2、12,全都不匹配,执行Case Else 页面输出:一个都匹配不上执行这里

4. Case的多种写法

Select Case score
    Case 100
        Response.Write "满分"
    Case 90 To 99   '区间:90~99
        Response.Write "优秀"
    Case 80,81,82   '多个值用逗号隔开
        Response.Write "良好"
    Case Is >=60    'Is关键字 + 比较运算符
        Response.Write "及格"
    Case Else
        Response.Write "不及格"
End Select
Code language: PHP (php)

5. Select Case 和 If…ElseIf 的对比

  • Select Case:适合同一个表达式去匹配多个固定值,代码整齐。
  • If…ElseIf:适合多个不一样的条件表达式,条件可以完全无关。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注