Оператор switch() ... case на языке Java

Оператор switch() … case на языке Java

При написании программ возникают такие моменты, когда необходимо проводить сравнение, но заведомо известно с чем сравнивать или нужно, чтобы пользователь выбрал, например, определённую цифру из определённого диапазона (допустим, от 1 до 9).

Для реализации вышесказанного можно использовать условные операторы, но в таком случае получается громоздкая и неудобная конструкция, к тому же код получается не таким красивым.

Оператор switch() — это узконаправленный условный оператор. Модернизация и выжимка из обычных условных операторов. В нём происходит проверка значения переменной на совпадение с одним из предложенных заранее значений в контейнере case.

Контейнер case — это блок, в котором находится одно значение, с которым сравнивается значение переменной, и инструкция в виде программного кода, которая должна выполняться в случае совпадения значения переменной и значения контейнера case().

Конструкция из switch()…case широко используется при самых разных ситуациях.
Одна из таких ситуаций — создание меню в программе. Пользователь должен выбрать один из нескольких вариантов в меню, нажать соответствующую кнопку и программа обязана обработать соответствующим образом команду пользователя.

Зачастую конструкцию из switch()…case называют блоком выбора.

При работе с этим оператором необходимо следовать следующей инструкции (применяется для каждого блока выбора):

  1. Сначала в круглых скобках switch() размещается переменная, значение которой должно быть найдено среди значений, содержащихся в блоках case. Может быть использовано только один раз;
  2. Дальше прописывается контейнер case, в котором указывается значение, с которым идёт проверка на совпадение со значением переменной, указанной в скобках switch(). Каждая инструкция, записанная в case обязана быть закончена оператором break (благодаря ему происходит завершение проверки на совпадение). Должно быть использовано минимум один раз, предел не ограничен;
  3. Необходимо предусмотреть вариант, что ни одно из значений предложенных в case не будет совпадать со значением переменной указанной в switch(), в этом случае необходимо использовать контейнер default, ему не нужно указывать никакое значение, так как инструкции, записанные в него, выполняются в случае несовпадения значения переменной ни с одним из значений в контейнерах case. Можно не использовать, но в случае применения, использовать можно только один раз;

Проверка идёт последовательно сверху вниз. Поэтому каждая инструкция в контейнере case должна быть закончена оператором прерывания break.
В контейнере default оператор прерывания break не требуется, так как default самый последний, а значит, после него уже нечего проверять.

Реализуем ввод пользователя с клавиатуры и последующим выводом соответствующего сообщения.

 

Таким нехитрым образом мы разобрались с темой: «Оператор switch() … case на языке Java»!

Post Author: Nikulux

Добавить комментарий