Шаг 9.
Язык программирования Java.
Оператор множественного выбора

На этом шаге мы рассмотрим оператор множественно выбора

Языковая конструкция if / else может оказаться неудобной, если требуется организовать в коде выбор из многих вариантов. Для этой цели в Java имеется оператор switch, полностью соответствующий одноименному оператору в C и C++. Синтаксис данного оператора следующий:

switch (переменная) {
 case значение1: {
  оператор1;
  оператор2;
  ...
  break;
 }

 case значение2: {
  оператор1;
  оператор2;
  ...
  break;
 }

 case значение3: {
  оператор1;
  оператор2;
  ...
  break;
 }

 ...

 default:{
  оператор1;
  оператор2;
  ...
  break;
 }
}

Выполнение данного оператора выполняется с метки ветви case, соответствующей значению "значение1". Если значение переменной не равно этому значению, то оператор переходит к метке case, соответствующей значению "значение2". Это продолжается пока не найдется метка с нужным значением или пока не будет достигнут конец оператора. В последнем случае будут выполнены все операторы помеченные меткой default (если такая имеется). Если будет найдена нуная метка, то будут выполнены все операторы, соответствующие данной метки. Служебное слово break нужно, чтобы не стали выполнятся все операторы всех меток, находящиеся ниже найденной метки.

Чтобы понять выше сказанное, приведем пример, в котором используется данный оператор.

/*
В данной программе, когда будет достигнута метка со значением 5,
будут выполняться все операторы, стоящие ниже пока не
будет достигнут оператор break;
*/
public class PrimerFind {
    public static void main(String[] args) {
        int n = 5;

	switch (n) {
            case 1:{
                System.out.println("case 1");
            }
            case 2:{
                System.out.println("case 2");
            }
            case 3:{
                System.out.println("case 3");
            }
            case 4:{
                System.out.println("case 4");
            }
            case 5:{
                System.out.println("case 5");
            }
            case 6:{
                System.out.println("case 6");
            }
            case 7:{
                System.out.println("case 7");
                break;
            }
            case 8:{
                System.out.println("case 8");
            }
            default:{
                System.out.println("default");
            }
        }
    }
}

Полный проект можно взять здесь.


Рис. 1. Вывод программы

На следующем шаге мы рассмотрим цикл for

Предыдущий шаг Содержание Следующий шаг