Поделиться через


Практическое руководство. Проверка нескольких значений выражения

Обновлен: Ноябрь 2007

При сравнении одного и того же выражения с различными значениями можно использовать конструкцию Оператор Select...Case (Visual Basic) в качестве альтернативы конструкции Оператор If...Then...Else (Visual Basic). В то время как операторы If и ElseIf (Visual Basic) могут оценивать различные выражения в каждом операторе, оператор Select оценивает единственное выражение один раз и использует его при каждом сравнении.

Чтобы вычислить выражение один раз и проверить несколько значений

  • Используйте конструкцию Select...Case для указания выражения и значений для проверки. Каждый оператор Case может содержать одно или более значений, диапазон значений или сочетание значений и операторов сравнения. Можно использовать инструкцию Case Else для обработки всех значений, не проверенных предыдущей инструкцией Case. В следующем примере показаны эти возможности.

    Function bonus(ByVal performance As Integer, ByVal salary As Decimal) _
        As Decimal
        Select performance
            Case 1
                Return salary * 0.1
            Case 2, 3
                Return salary * 0.09
            Case 5 To 7
                Return salary * 0.07
            Case 4, 8 To 10
                Return salary * 0.05
            Case Is < 15
                Return 100
            Case Else
                Return 0
       End Select
    End Function
    

    Visual Basic сравнивает значение выражения со значениями в операторах Case в порядке их следования в конструкции Select...Case. Если обнаруживается совпадение или оператор Case Else, то выполняется соответствующий блок оператора. В любом случае осуществляется переход к оператору, следующему за инструкцией End Select.

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

Пример кода для конструкции Select...Case также доступен как фрагмент кода IntelliSense. В выборе фрагмента кода он находится в разделе Язык Visual Basic. Дополнительные сведения см. в разделе Практическое руководство. Вставка фрагментов в код (Visual Basic).

См. также

Задачи

Практическое руководство. Передача управления за пределы структуры управления

Практическое руководство. Запуск инструкции в зависимости от одного или более условий

Практическое руководство. Сохранение элемента управления при ошибке

Основные понятия

Структуры решений

Циклические структуры

Другие структуры управления

Вложенные структуры управления

Другие ресурсы

Управление ходом выполнения в Visual Basic