Конструкция switch в C#
Давайте теперь разберем конструкцию switch.
В C# есть специальная конструкция switch-case,
которая используется для выбора одного значения
из некоторого ряда значений. В скобках стоит
выражение: целое число, символ char
или строка. Изучите синтаксис:
switch (value) {
case caseValue1:
/* runs when value equals caseValue1 */
break;
case caseValue2:
/* runs when value equals caseValue2 */
break;
case caseValue3:
/* runs when value equals caseValue3 */
break;
}
Как вы можете заметить, switch-case
представляет собой альтернативу множеству
else if. Давайте посмотрим на примере.
Пусть у нас есть вот такой код:
int num = 1;
if (num == 1) {
Console.WriteLine("variant 1");
} else if (num == 2) {
Console.WriteLine("variant 2");
} else if (num == 3) {
Console.WriteLine("variant 3");
} else {
Console.WriteLine("variant not supported");
}
Перепишем этот код через конструкцию switch-case:
int num = 1;
switch (num) {
case 1:
Console.WriteLine("variant 1");
break;
case 2:
Console.WriteLine("variant 2");
break;
case 3:
Console.WriteLine("variant 3");
break;
}
Дан код:
int num = 2;
Через switch выведите "winter" для 1,
"spring" для 2, "summer" для 3,
"autumn" для 4.
Перепишите код, используя switch по целому числу:
int num = 1;
if (num == 1) {
Console.WriteLine("rus");
} else if (num == 2) {
Console.WriteLine("eng");
} else if (num == 3) {
Console.WriteLine("deu");
} else {
Console.WriteLine("language not supported");
}