Выберите оператор Case в VB.Net с примерами

⚡ Умное резюме

Оператор `select Case` в VB.Net — это условное выражение, которое проверяет одно выражение на соответствие списку значений и выполняет соответствующий блок кода, обеспечивая более чистое и читаемое ветвление, чем длинные цепочки `If Then ElseIf`.

  • 🔍 Цель: Проверьте одно выражение на соответствие множеству значений и запустите соответствующий тест.
  • 🧩 Синтаксис: Каждая ветвь начинается с Case; блок продолжается до End Select.
  • 🔢 Несколько совпадений: Функция One Case принимает списки с запятыми, диапазоны значений и сравнения с помощью оператора Is.
  • 🧩 В противном случае: Функция Case Else выполняется только в том случае, если ни один другой вариант Case не соответствует этому значению.
  • 🔤 Чувствительность к регистру: Функции ToLower и ToUpper нормализуют текст таким образом, что при сопоставлении регистр букв не учитывается.
  • 🤖 Помощь ИИ: GitHub Copilot и IntelliCode Заполняйте блоки Select Case по мере ввода текста.

Оператор выбора Case в VB.Net

Что такое выбор регистра в VB.Net?

Выберите Случай — это условный оператор, который помогает проверить переменную на равенство набору значений. Каждое значение называется регистром, и включаемую переменную следует проверять для всех выбранных случаев.

Оператор Select Case предоставляет вам простой способ проверки содержимого переменной. Однако его можно использовать только в том случае, если рассматриваемая переменная имеет лишь ограниченное количество опций.

Синтаксис оператора Select Case в VB.Net

Заявление 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.
  • еще операторы: операторы, которые следуют за Case Else и выполняются, если выражение select не соответствует ни одному из предложений в express_list для любого оператора Case.

Примеры программ VB.Net Select Case Statement

Давайте рассмотрим пример, демонстрирующий использование оператора Select Case в VB.Net:

Шаг 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 Select Case вывод программы печать Hello Guru99

Вот скриншот кода, который мы использовали:

Пример кода функции Select Case в VB.Net, показанный в Visual Studio.

Объяснение Code:

  1. Создание модуля с именем Module1.
  2. Запуск основной подпроцедуры.
  3. Создание строковой переменной с именем name.
  4. Присвоение значения Guru99 к имени переменной.
  5. Значение имени переменной будет использоваться для сравнения с различными операторами Case для поиска совпадений.
  6. Если значение имени переменной — John.
  7. Текст для печати на консоли, если указанный выше случай верен/совпадает.
  8. Если значение имени переменной равно Guru99.
  9. Текст для печати на консоли, если указанный выше случай верен/совпадает.
  10. Если значение имени переменной — Алиса.
  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 и нажмите клавишу Enter. Вы должны получить следующее:

В VB.Net выбор варианта ответа после ввода пользователем Guru99

Вот скриншот кода:

VB.Net Выбор кода обращения при чтении входных данных с помощью Console.ReadLine

Объяснение Code:

  1. Создание модуля с именем Module1.
  2. Запуск основной подпроцедуры.
  3. Печать текста на консоли, предлагающего пользователю ввести свое имя.
  4. Создание строковой переменной с именем name и предложение пользователю ввести значение этой переменной на консоли.
  5. Значение имени переменной будет использоваться для сравнения с различными операторами Case для поиска совпадений.
  6. Если значение имени переменной — John.
  7. Текст для печати на консоли, если указанный выше случай верен/совпадает.
  8. Если значение имени переменной равно Guru99.
  9. Текст для печати на консоли, если указанный выше случай верен/совпадает.
  10. Если значение имени переменной — Алиса.
  11. Текст для печати на консоли, если указанный выше случай верен/совпадает.
  12. Если значение имени переменной — Joel.
  13. Текст для печати на консоли, если указанный выше случай верен/совпадает.
  14. Если ни одно из приведенных выше утверждений Case не является истинным/соответствует.
  15. Текст для печати на консоли, если указанный выше вариант Case верен, то есть ни один оператор Case не соответствует.
  16. Конец оператора Select.
  17. Этот оператор выведет на экран некоторый текст независимо от того, совпал ли оператор Case или нет. Он всегда будет выполняться.
  18. Приостановите окно консоли на некоторое время, ожидая, пока пользователь предпримет действие, чтобы закрыть его.
  19. Конец основной подпроцедуры.
  20. Конец модуля.

Функции ToLower() и ToUpper() в VB.Net

Оператор Select Case чувствителен к регистру. Это означает, что он будет рассматривать guru99 как отличное от Guru99. Однако для обработки случая с этим оператором мы можем использовать функции ToLower() и ToUpper().

Пример ToLower() и ToUpper() в VB.Net

Вот пример использования функций ToLower() и ToUpper() в VB.Net:

Шаг 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) Нажмите кнопку «Пуск» на верхней панели, чтобы запустить код. Вы должны получить следующий вывод:

Вывод в консоль функции ToLower в VB.Net для выбора варианта (Select Case)

Шаг 4) Введите имя GuruВведите 99 (буква G — заглавная) и нажмите клавишу Enter на клавиатуре. В результате должно получиться следующее:

VB.Net Select Case with ToLower matching uppercase GuruВход 99

Вот скриншот кода:

Пример кода VB.Net ToLower и ToUpper Select Case

Объяснение Code:

Code строка 5: Значение имени переменной будет использоваться для сравнения с различными операторами Case для поиска совпадений. Функция ToLower() гарантирует, что любое имя, введенное пользователем, сначала будет преобразовано в нижний регистр перед выполнением операторов Case. Это означает, что если пользователь вводит GuruЕсли пользователь введёт «John», это значение будет немедленно преобразовано в «guru99», после чего будет выполнена оценка операторов Case. Если пользователь введёт «John», это значение будет немедленно преобразовано в «john» до завершения оценки операторов Case.

Остальная часть кода аналогична приведенной выше.

Часто задаваемые вопросы (FAQ)

Значения следует указывать через запятую (Case 6, 7, 8), диапазон — через Case 1 To 10, или использовать Case Is > 5.

Функция Select Case проверяет одно выражение на соответствие множеству значений и читается без ошибок. Используйте If Then ElseIf для несвязанных или сложных логических условий.

Нет. Выполняется только первый соответствующий оператор Case, затем управление пропускается после End Select. В VB.Net не требуется оператор Break для предотвращения сквозного выполнения.

Ветка Case Else — это ветка по умолчанию, которая запускается только тогда, когда ни один другой Case не соответствует условию. Она необязательна, но безопасно обрабатывает неожиданные значения.

Выражение должно быть элементарным. тип данных например, логические значения (Boolean), символы (Char), даты (Date), целые числа (Integer), длинные целые числа (Long). DoubleДесятичное число, Объект или Строка.

Да. Поместите полный блок Select Case внутрь блока Case, который, в свою очередь, находится внутри внешнего блока. Внутренний тест выполняется только после того, как внешний совпадет с тестом, хотя глубокая вложенность ухудшает читаемость.

Да. Второй пилот GitHub превращает комментарий, написанный простым языком, в полноценный блок Select Case. RevУбедитесь, что рассматриваемые случаи охватывают все ожидаемые значения.

Да. Visual Studio 2026 объединяет Copilot с другими сервисами. ИнтеллиCode для полного и контекстно-зависимого завершения обработки заявок.

Подведем итог этой публикации следующим образом: