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


Interaction.Switch(Object[]) Метод

Определение

Вычисляет значения выражений из списка и возвращает значение Object, соответствующее первому выражению в списке, которое равно True.

public:
 static System::Object ^ Switch(... cli::array <System::Object ^> ^ VarExpr);
public static object? Switch (params object?[]? VarExpr);
public static object Switch (params object[] VarExpr);
static member Switch : obj[] -> obj
Public Function Switch (ParamArray VarExpr As Object()) As Object

Параметры

VarExpr
Object[]

Обязательный. Массив параметров Object. Должен содержать четное количество элементов. Можно передать список переменных типа Object или выражений, разделенных запятыми, либо одномерный массив элементов типа Object.

Возвращаемое значение

Вычисляет значения выражений из списка и возвращает значение Object, соответствующее первому выражению в списке, которое равно True.

Исключения

Число элементов нечетно.

Примеры

В следующем примере функция используется Switch для возврата имени языка, соответствующего названию города. Для нее Option Strict требуется значение Off.

Function matchLanguage(ByVal cityName As String) As String
    Return CStr(Microsoft.VisualBasic.Switch( 
        cityName = "London", "English", 
        cityName = "Rome", "Italian", 
        cityName = "Paris", "French"))
End Function

System.Diagnostics Поскольку пространство имен также содержит класс с именем Switch, вызов Switch функции должен быть квалифицирован пространством Microsoft.VisualBasic имен .

Комментарии

Аргумент , предоставленный для , VarExpr состоит из парных выражений и значений. Функция Switch вычисляет нечетные выражения от самого низкого к самому высокому индексу в VarExprи возвращает четное значение, связанное с первым выражением, результатом Trueкоторого является . Например, если VarExpr(0) имеет значение True, Switch возвращает VarExpr(1), а если VarExpr(0) имеет значение False , но VarExpr(2) имеет значение True, Switch возвращает VarExpr(3)и т. д.

Если аргумент не задан VarExpr , Switch возвращается Nothing.

Примечание

Выражения в списке аргументов могут включать вызовы функций. В рамках подготовки списка аргументов для вызова Switchкомпилятор Visual Basic вызывает каждую функцию в каждом выражении. Это означает, что нельзя полагаться на то, что определенная функция не вызывается, если выражение, предыдущее в списке аргументов, имеет значение True.

Применяется к

См. также раздел