Выберите оператор 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 ВБ.НЕТ.
- список_выражений: предложения выражения, которые обозначают значения соответствия для выражения. Если предложений несколько, разделите их запятой (,).
- заявления): операторы, которые следуют за 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) Нажмите кнопку «Пуск» на верхней панели, чтобы запустить программу. Это даст вам следующий результат:
Вот скриншот кода, который мы использовали:
Объяснение кода:
- Создание модуля с именем Module1.
- Запуск основной подпроцедуры.
- Создание строковой переменной с именем name.
- Присвоение имени переменной значения Guru99.
- Значение имени переменной будет использоваться для сравнения с различными операторами Case для поиска совпадений.
- Если значение имени переменной — John.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если значение имени переменной — Guru99.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если значение имени переменной — Алиса.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если значение имени переменной — Joel.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если ни одно из приведенных выше утверждений Case не является истинным/соответствует.
- Текст для печати на консоли, если указанный выше вариант Case верен, то есть ни один оператор Case не соответствует.
- Конец оператора Select.
- Этот оператор выведет на экран некоторый текст независимо от того, совпал ли оператор Case или нет. Он всегда будет выполняться.
- Приостановите окно консоли на некоторое время, ожидая, пока пользователь предпримет действие, чтобы закрыть его.
- Конец основной подпроцедуры.
- Конец модуля.
Пример 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) Нажмите кнопку «Пуск» на верхней панели, чтобы выполнить его. Он должен вернуть следующее:
Шаг 4) Введите имя Guru99 и нажмите клавишу ввода. Вы должны получить следующее:
Вот скриншот кода:
Объяснение кода:
- Создание модуля с именем Module1.
- Запуск основной подпроцедуры.
- Печать текста на консоли, предлагающего пользователю ввести свое имя.
- Создание строковой переменной с именем name и предложение пользователю ввести значение этой переменной на консоли.
- Значение имени переменной будет использоваться для сравнения с различными операторами Case для поиска совпадений.
- Если значение имени переменной — John.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если значение имени переменной — Guru99.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если значение имени переменной — Алиса.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если значение имени переменной — Joel.
- Текст для печати на консоли, если указанный выше случай верен/совпадает.
- Если ни одно из приведенных выше утверждений Case не является истинным/соответствует.
- Текст для печати на консоли, если указанный выше вариант Case верен, то есть ни один оператор Case не соответствует.
- Конец оператора Select.
- Этот оператор выведет на экран некоторый текст независимо от того, совпал ли оператор Case или нет. Он всегда будет выполняться.
- Приостановите окно консоли на некоторое время, ожидая, пока пользователь предпримет действие, чтобы закрыть его.
- Конец основной подпроцедуры.
- Конец модуля.
Функции 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) Нажмите кнопку «Пуск» на верхней панели, чтобы запустить код. Вы должны получить следующий вывод:
Шаг 4) Введите имя Guru99 (G — заглавная буква) и нажмите клавишу ввода на клавиатуре. Вы должны получить следующее:
Вот скриншот кода:
Объяснение кода:
Строка кода 5: Значение имени переменной будет использоваться для сравнения с различными операторами Case для поиска совпадений. Функция ToLower() гарантирует, что любое имя, которое вводит пользователь, сначала преобразуется в нижний регистр перед вычислением операторов Case. Это означает, что если пользователь вводит Guru99, он будет немедленно преобразован в guru99, после чего будет выполнена оценка операторов Case. Если пользователь вводит John, оно будет немедленно преобразовано в john, прежде чем будет выполнена оценка операторов Case.
Остальная часть кода аналогична приведенной выше.
Резюме
- Оператор Select Case, предоставляемый VB.NET, помогает оценить значение по набору значений путем сопоставления.
- Он подходит только в том случае, если известно, что возможные значения рассматриваемой переменной ограничены.
- Оператор Select Case чувствителен к регистру.
- Вы можете использовать функции ToLower() и ToUpper() для преобразования строк в нижний и верхний регистр соответственно.