@TechNOIR

Как использовать switch для двух переменных?

Можно ли использовать switch для двух переменных? Вместо if

У меня в двух функция есть переменные. В одной $a в другой $b. Они в соответствии от телодвижений в функциях принимают значения либо true либо false.

В третьей функции я принимаю действия на основании значений $a и $b

Хотелось бы понять можно ли switch использовать вместо if здесь?

Надо обработать условия:

1. $a=true и $b=true
2. $a=false и $b=false
3. 1. $a=false и $b=true
1. $a=true и $b=false
  • Вопрос задан
  • 339 просмотров
Пригласить эксперта
Ответы на вопрос 3
ApeCoder
@ApeCoder
switch([System.Tuple]::Create($true, $false))
{
     ([System.Tuple]::Create($true, $true))  {"1"}
     ([System.Tuple]::Create($true, $false))  {"2"}
}
Ответ написан
Комментировать
@anykey_ua
Добрый день!
Как вариант на вход Switch давать сумму значений (пример ниже), но потребуется модифицировать переменные на выходе из двух первых функций, что бы исключить совпадение результатов их суммы
$a = 0
$b = 0
switch ($a+$b){
0 {Write-Host "0";break}
1 {Write-Host "1";break}
2 {Write-Host "2";break}
}
Ответ написан
Комментировать
Можно использовать вложенный switch.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы