Programming-Basics-Book-CSharp-BG

Условна конструкция switch-case

Конструкцията switch-case работи като поредица if-else блокове. Когато работата на програмата ни зависи от стойността на една променлива, вместо да правим последователни проверки с if-else блокове, можем да използваме условната конструкция switch. Тя се използва за избор измежду списък с възможности. Конструкцията сравнява дадена стойност с определени константи и в зависимост от резултата предприема действие.

Променливата, която искаме да сравняваме, поставяме в скобите след оператора switch и се нарича “селектор”. Тук типът трябва да е сравним (числа, стрингове). Последователно започва сравняването с всяка една стойност, която се намира след case етикетите. При съвпадение започва изпълнението на кода от съответното място и продължава, докато стигне оператора break. В някои програмни езици (като C и C++) break може да се изпуска, за да се изпълнява код от друга case конструкция, докато не стигне до въпросния оператор. В C# обаче, наличието на break е задължителен за всеки case, който съдържа изпълнение на програмна логика. При липса на съвпадение, се изпълнява default конструкцията, ако такава съществува.

switch (селектор)
{
    case стойност1:
        конструкция;
        break;
    case стойност2:
        конструкция;
        break;
    case стойност3:
        конструкция;
        break;
    
    default:
        конструкция;
        break;
}