Instrukcja switch

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

switch to instrukcja wyboru używana m.in. w językach C, C++, Java, C# i JavaScript. Pozwala wykonać różny kod w zależności od wartości jednej zmiennej lub wyrażenia.

Składnia

switch (zmienna) {
    case wartosc1:
        // instrukcje
        break;
    case wartosc2:
        // instrukcje
        break;
    default:
        // instrukcje domyślne
}

Jak działa switch?

Program oblicza wartość wyrażenia w nawiasie, np. nrTel, a następnie porównuje ją z wartościami podanymi przy case.

Przykład:

switch (nrTel) {
    case 999:
        opis = "Pogotowie";
        break;
    case 998:
        opis = "Straż";
        break;
    default:
        opis = "Inny numer";
}

Jeśli nrTel == 999, zmienna opis otrzyma wartość "Pogotowie". Jeśli żadna wartość case nie pasuje, wykona się blok default.

Rola instrukcji break

break kończy wykonywanie instrukcji switch. Bez break program może przejść do kolejnego przypadku, co nazywa się „fall-through”. W zadaniach egzaminacyjnych brak break często zmienia wynik działania programu.

switch a if else

Instrukcję switch można zwykle zastąpić łańcuchem if, else if, else:

if (nrTel == 999)
    opis = "Pogotowie";
else if (nrTel == 998)
    opis = "Straż";
else
    opis = "Inny numer";

Taki kod jest funkcjonalnie równoważny, gdy warunki sprawdzają te same wartości i tylko jeden wariant ma zostać wykonany.