VB.Net 中选择 Case 语句并附示例

⚡ 智能摘要

VB.Net 中的 Select Case 是一个条件语句,它将一个表达式与值列表进行比较,并运行匹配的代码块,从而提供比冗长的 If Then ElseIf 链更清晰、更易读的分支。

  • 🔍 目的: 用一个表达式测试多个值,并运行匹配的 Case 语句。
  • 🧩 语法: 每个分支都以 Case 开头;代码块运行到 End Select。
  • 🔢 多场比赛: One Case 接受逗号列表、To 范围和 Is 比较。
  • 🧩 否则: 只有当没有其他 Case 语句与该值匹配时,才会运行 Case Else 语句。
  • 🔤 区分大小写: ToLower 和 ToUpper 函数用于规范化文本,使匹配忽略字母大小写。
  • 🤖 人工智能帮助: GitHub Copilot 和 IntelliCode 输入时请自动补全 Select Case 块。

VB.NET 中的 Select Case 语句

VB.Net 中的 Select Case 是什么?

选择案例 是一个条件语句,可帮助您测试变量是否与一组值相等。每个值都称为一个案例,并且应针对所有选定的案例检查正在打开的变量。

Select Case 语句为您提供了一种测试变量内容的简单方法。但是,它只适合在相关变量只有有限数量的选项时使用。

VB.Net 中的 Select Case 语句的语法

Select Case 语句在以下位置声明: VB.Net 使用以下语法:

Select [ Case ] your_expression
   [ Case expression_list
      [ statement(s) ] ]
   [ Case Else
      [ else statement(s) ] ]
End Select

让我们描述一下语法中使用的参数:

  • 你的表达:这表示一个表达式,其值为基本 数据类型 支持 Microsoft VB.Net。
  • 表达式_列表:表示表达式的匹配值的表达式子句。如果有多个子句,请使用逗号 (,) 分隔。
  • 声明:跟在 Case 后面的语句,它们在选择表达式与 expression_list 中的任何子句匹配后执行。
  • else 语句:跟在 Case Else 之后的语句,当选择表达式无法与任何 Case 语句的表达式列表中的任何子句匹配时运行。

VB.Net 选择案例语句程序示例

让我们通过一个例子来演示如何在VB.Net中使用Select Case语句:

步骤1) 首先,创建一个新的控制台应用程序。

步骤2) 使用以下代码:

Module Module1
    Sub Main()
        Dim name As String
        name = "Guru99"
        Select Case name

            Case "John"
                Console.WriteLine("Hello John")

            Case "Guru99"
                Console.WriteLine("Hello Guru99")

            Case "Alice"
                Console.WriteLine("Hello Alice")

            Case "Joel"
                Console.WriteLine("Hello Joel")

            Case Else
                Console.WriteLine("unknown name")

        End Select
        Console.WriteLine("VB.NET is easy!")
        Console.ReadKey()
    End Sub
End Module

步骤3) 单击顶部栏中的“开始”按钮来执行该程序。它将为您提供以下结果:

VB.Net 选择案例程序输出打印 Hello Guru99

以下是我们使用的代码的屏幕截图:

Visual Studio 中显示的 VB.Net Select Case 示例代码

的解释 Code:

  1. 创建一个名为 Module1 的模块。
  2. 主要子程序的开始。
  3. 创建一个名为 name 的字符串变量。
  4. 赋值为 Guru变量名变为 99。
  5. 变量名称的值将用于与各种 Case 语句进行比较以找到匹配项。
  6. 假设变量名的值是John。
  7. 如果上述案例为真/匹配,则在控制台上打印文本。
  8. 如果变量名的值为 Guru99.
  9. 如果上述案例为真/匹配,则在控制台上打印文本。
  10. 假设一个变量名的值是Alice。
  11. 如果上述案例为真/匹配,则在控制台上打印文本。
  12. 如果变量名的值是Joel。
  13. 如果上述案例为真/匹配,则在控制台上打印文本。
  14. 如果上述 Case 语句均不为真/匹配。
  15. 如果上述 Case 为真,即没有 Case 语句匹配,则在控制台上打印的文本。
  16. Select 语句的结束。
  17. 无论 Case 语句是否匹配,此语句都会在屏幕上打印一些文本。它将始终执行。
  18. 暂停控制台窗口一段时间,等待用户采取行动将其关闭。
  19. 主要子程序结束。
  20. 模块结束。

例子2

你也可以让用户输入名称,然后根据该输入做出决定。

步骤1) 创建一个新的控制台应用程序。

步骤2) 使用以下代码:

Module Module1
    Sub Main()
        Console.Write("Enter your name: ")
        Dim name As String = Console.ReadLine()
        Select Case name

            Case "John"
                Console.WriteLine("Hello John")

            Case "Guru99"
                Console.WriteLine("Hello Guru99")

            Case "Alice"
                Console.WriteLine("Hello Alice")

            Case "Joel"
                Console.WriteLine("Hello Joel")

            Case Else
                Console.WriteLine("unknown name")

        End Select
        Console.WriteLine("VB.NET is easy!")
        Console.ReadKey()
    End Sub
End Module

步骤3) 单击顶部栏中的“开始”按钮来执行它。它应该返回以下内容:

VB.Net 选择案例控制台提示,要求输入名称

步骤4) 输入名称 Guru输入 99 并按回车键。您应该会看到以下内容:

用户输入后,VB.Net 选择条件输出 Guru99

以下是代码截图:

VB.Net Select Case 代码使用 Console.ReadLine 读取输入

的解释 Code:

  1. 创建一个名为 Module1 的模块。
  2. 主要子程序的开始。
  3. 在控制台上打印一些文本,指导用户输入他们的姓名。
  4. 创建一个名为 name 的字符串变量,并提示用户在控制台上输入该变量的值。
  5. 变量名称的值将用于与各种 Case 语句进行比较以找到匹配项。
  6. 假设变量名的值是John。
  7. 如果上述案例为真/匹配,则在控制台上打印文本。
  8. 如果变量名的值为 Guru99.
  9. 如果上述案例为真/匹配,则在控制台上打印文本。
  10. 假如变量名的值为Alice。
  11. 如果上述案例为真/匹配,则在控制台上打印文本。
  12. 如果变量名的值是Joel。
  13. 如果上述案例为真/匹配,则在控制台上打印文本。
  14. 如果上述 Case 语句均不为真/匹配。
  15. 如果上述 Case 为真,即没有 Case 语句匹配,则在控制台上打印的文本。
  16. Select 语句的结束。
  17. 无论 Case 语句是否匹配,此语句都会在屏幕上打印一些文本。它将始终执行。
  18. 暂停控制台窗口一段时间,等待用户采取行动将其关闭。
  19. 主要子程序结束。
  20. 模块结束。

VB.Net 中的 ToLower() 和 ToUpper() 函数

Select Case 语句区分大小写。这意味着它会将 guru99 和 guru99 视为不同的名称。 Guru99. 但是,我们可以使用 ToLower() 和 ToUpper() 函数来处理具有此语句的情况。

VB.Net 中的 ToLower() 和 ToUpper() 的示例

以下是 VB.Net 中 ToLower() 和 ToUpper() 函数的示例:

步骤1) 创建一个新的控制台应用程序。

步骤2) 使用以下代码:

Module Module1
    Sub Main()
        Console.Write("Enter your name: ")
        Dim name As String = Console.ReadLine()
        Select Case name.ToLower()
		
            Case "john." 
                Console.WriteLine("Hello John")

            Case "guru99." 
                Console.WriteLine("Hello Guru99")

            Case "alice." 
                Console.WriteLine("Hello Alice")

            Case "joel." 
                Console.WriteLine("Hello Joel")

            Case Else
                Console.WriteLine("unknown name")

        End Select
        Console.WriteLine("VB.NET is easy!")
        Console.ReadKey()
    End Sub
End Module

步骤3) 单击顶部栏上的“开始”按钮运行代码。您应该得到以下输出:

VB.Net ToLower 函数的控制台输出(针对 Select Case 语句)

步骤4) 输入名称 Guru输入 99(G 为大写),然后按键盘上的回车键。您应该会看到以下内容:

VB.Net Select Case with ToLower matching uppercase Guru99输入

以下是代码截图:

VB.Net ToLower 和 ToUpper SelectCase 示例代码

的解释 Code:

Code 第5行: 变量名的值将用于与各个 Case 语句进行比较,以查找匹配项。`ToLower()` 函数将确保用户输入的任何名称在计算 Case 语句之前先转换为小写。这意味着如果用户输入 Guru如果用户输入 99,它会立即转换为 guru99,然后执行 Case 语句的判断。如果用户输入 John,它会在执行 Case 语句之前立即转换为 john。

其余代码与上面相同。

常见问题

用逗号列出值(例如 6、7、8),用 Case 1 To 10 给出范围,或者使用 Case Is > 5。

Select Case 语句用于测试一个表达式是否符合多个值,且代码简洁易读。对于不相关或复杂的布尔条件,请使用 If Then ElseIf 语句。

不。只有第一个匹配的 Case 语句会执行,然后控制流会跳过 End Select 语句。VB.Net 不需要 Break 语句来防止循环执行。

Case Else 是默认分支,仅当没有其他 Case 匹配时才会运行。它是可选的,但可以安全地处理意外值。

该表达式必须是初等表达式。 数据类型 例如布尔值、字符、日期、整数、长整型等 Double可以是十进制数、对象或字符串。

是的。将一个完整的 Select Case 语句块放在一个外部 Case 语句块的 Case 语句块内。内部语句块仅在外部语句块匹配成功后才会执行,但深度嵌套会降低代码的可读性。

是的。 GitHub 副驾驶 将纯英文注释转换为完整的 Select Case 代码块。 Rev假设这些案例涵盖了所有预期值。

是的。Visual Studio 2026 将 Copilot 与 智商Code 用于整行、上下文相关的案例补全。

总结一下这篇文章: