case
default:
}
Заданное
Последовательность операторов из ветви default выполняется в том случае, если ни одна из констант выбора не совпадает с заданным выражением. Ветвь default не является обязательной. Если же она отсутствует и выражение не совпадает ни с одним из условий выбора, то никаких действий вообще не выполняется. Если же происходит совпадение с одним из условий выбора, то выполняются операторы, связанные с этим условием, вплоть до оператора break.
Ниже приведен пример программы, в котором демонстрируется применение оператора switch.
// Продемонстрировать применение оператора switch.
using System;
class SwitchDemo { static void Main() { int i;
for(i=0; i<10; i++) switch(i) {
case 0:
Console.WriteLine('i равно нулю'); break; case 1:
Console.WriteLine('i равно единице'); break; case 2:
Console.WriteLine('i равно двум'); break; case 3:
Console.WriteLine('i равно трем'); break; case 4:
Console.WriteLine ('i равно четырем'); break;
default: (
Console.WriteLine('i равно или больше пяти'); break;
}
}
}
Результат выполнения этой программы выглядит следующим образом.
i
равно
нулю.
i
равно
единице.
i
равно
двум.
i
равно
трем.
i
равно
четырем.
i
равно
или больше
пяти
i
равно
или больше
пяти
i
равно
или больше
пяти
i
равно
или больше
пяти
i
равно
или больше
пяти
Как видите, на каждом шаге цикла выполняются операторы, связанные с совпадающей константой выбора, в обход всех остальных операторов. Когда же значение
переменной i становится равным или больше пяти, то оно не совпадает ни с одной из констант выбора, а следовательно, выполняются операторы из ветви default.
В приведенном выше примере оператором switch управляла переменная i типа int. Как пояснялось ранее, для управления оператором switch может быть использовано выражений любого целочисленного типа, включая и char. Ниже приведен пример применения выражения и констант выбора типа char в операторе switch.