Конструкция ветвления Switch

Зачастую при составлении условий возникает необходимость реагировать различным образом на большой набор возможных значений переменной.
Например мы хотим написать программу пользователь которой сможет отдавать команды компьютеру. Если будет введен символ “+”- компьютер должен будет сложить содержимое переменных A и B. Аналогично для “-”, “*” и ”/”.
Конечно можно использовать серию условных операторов:

if (comand == "+")
{
    C=A+B;
}
else if (command == "-")
{
    C=A-B;
}
else if (command == "*")
{
    C=A*B;
}
else if (command == "/")
{
    C=A/B;
}

Но это получается крайне неудобно, к тому же очень легко допустить ошибку. Поэтому лучше воспользоваться специальной конструкцией для выбора из множества взаимоисключающих условий. Она называется Switch и работает следующим образом:

switch(comand)
{
    case "+":
        C=A+B;
    break;
    case "-":
        C=A-B;
    break;
    case "*":
        C=A*B;
    break;
    case "/":
        C=A/B;
    break;
    default:
        // действия, когда переменная имеет значение,
        // отличающееся от всех вышеперечисленных
}

В скобках после служебного слова «switch» записана переменная, которая будет использоваться далее для сравнений. Каждое сравнение начинается со слова «case», после которого нужно написать условие и поставить двоеточие. В конце каждого блока нужно напечатать команду «break», которая выполнить преждевременный выход из конструкции.

Следует заметить, что оператор switch является лишь только сокращенной формой записи рассмотренной ранее конструкции с использованием if. По факту компилятор языка создаст один и тот же код, поэтому никакой прибавки в скорости это не даст.