Конструкция переключателя switch-case имеет несколько (две или более) ветвей. Переключатель выполняет одну заданную ветвь в зависимости от значения вычисляемого ключевого выражения. Принципиальным отличием этой конструкции от условного оператора является то, что выражение, определяющее выбор исполняемой ветви, допускает использование не логических значений.
В каждом операторе case указывается постоянное значение. Выполняется тело того оператора case, постоянное значение которого, соответствует значению выражения селектора оператора switch.
Сама конструкция имеет следующий вид:

Правило: тип выражения-селектора должен совпадать с типом постоянных выражений, или тип постоянного выражения должен иметь возможность неявно преобразовываться в тип выражения-селектора.
Правило: каждый блок case в котором содержатся выполняемые операторы, должен завершаться оператором перехода break или goto case, return или throw.
Правило: постоянное значение блоков case могут содержать в себе только одно значения, попытка указания диапазона значений недопустима. Если нужно указывать диапазоны значений, то используйте каскад if-else.
Примечание: использование операторных скобок в блоках case необязательно.
Источник: видеоурок Александра Шевчука"ВИДЕОУРОК №4. УСЛОВНЫЕ КОНСТРУКЦИИ"
предыдущая статья