Почему switch/case не принимает непостоянные данные?
Столкнулся с проблемой, нужно сравнить переменную с рандомным значением в switch/case, но он почему- то выдаёт ошибку
"A constant value of type 'string' is expected" .
Сам код:
string value = "Five";
string exp = Convert.ToString(rnd.Next(0,10));
switch (value)
{
case exp:
Console.WriteLine("End");
break;
}
Ответы (1 шт):
Автор решения: Roman C
→ Ссылка
Чтобы сравнить переменную с рандомным значением в операторе switch/case нужно: определить переменную как const и подставить ее в case, а переменную с рандомным значением подставить в switch.
const string value = "5";
var rnd = new Random();
string exp = Convert.ToString(rnd.Next(0,10));
switch (exp)
{
case value:
Console.WriteLine("End");
break;
}
Вот весь код.