switch

Оператор switch

Ще одна конструкція, що дозволяє перевіряти умови і виконувати в залежності від цього різні дії, - це switch. У залежності від того, яке значення має змінна, він перемикається між різними блоками дії. switch дуже схожий на оператор if ... elseif ... else або набір операторів if. Структуру switch можна записати наступним чином:

switch (вираз чи змінна) { 
case значення1: 
блок_дій1 
break; 
case значення2: 
блок_дій2 
break;
 ... 
default: 
блок_дій_при_замовчуванні 
}

На відміну від if, тут значення виразу не приводиться до логічного типу, а просто порівнюється зі значеннями, перерахованими після ключових слів case (значення1, значення2 і т.д.). Якщо значення виразу співпало з якимсь варіантом, то виконується відповідний блок_дій - від двокрапки після значення, що співпало до кінця switch або до першого оператора break, якщо такий знайдеться. Якщо значення виразу не співпало з жодним із варіантів, то виконуються дії за умовчанням (блок_дій_при_замовчуванні), що знаходяться після ключового слова default. Вираз в switch обчислюється тільки один раз, а в операторі elseif - кожен раз, тому, якщо вираз досить складний, то switch працює швидше.