Switch в Java | Синтаксис и примеры

Оператор switch используется для выполнения различных действий на основе разных условий. Оператор switch Java работает с байтовыми, короткими, char и int примитивными типами данных. Он также работает с перечисляемыми типами, классом String и несколькими специальными классами, которые обертывают некоторые примитивные типы: Character, Byte, Short и Integer.

Синтаксис:

 
switch(expression) {
  case n:
    code block
    break;
  case n:
    code block
    break;
  default:
    default code block
}

Выражение (условие) переключателя оценивается один раз, а значение выражения сравнивается со значениями каждого случая. Если есть совпадение, выполняется соответствующий блок кода. Если аргумент case case не найден, программа ищет необязательное предложение по умолчанию, и если оно найдено, передает управление этому предложению, выполняя связанные операторы. Необязательный оператор break, связанный с каждым ярлыком case, гарантирует, что программа выйдет из коммутатора после выполнения согласованного оператора и продолжит выполнение в операторе следующего коммутатора. Если разрыв пропущен, программа продолжает выполнение в следующем выражении в инструкции switch.

Пример:

 
class TestClass
{
  public static void main (String[] args)
  {
    int inDay = 2;
    String day;
    switch (inDay) {
      case 1:  day = "Subday";
               break;
      case 2:  day = "Monday";
               break;
      case 3:  day = "Tuesday";
               break;
      case 4:  day = "Wednesday";
               break;
      case 5:  day = "Thursday";
               break;
      case 6:  day = "Friday";
               break;
      case 7:  day = "Saturday";
               break;
      default: day = "Invalid entry";
               break;
    }
    System.out.println("Selected day is: " + day);
  }
}

Вывод:

 
Selected day is: Monday

В приведенном выше случае inDay является параметром для переключения. Зависит от параметра переключателя, для строки дня присваивается соответствующее значение. Здесь inDay = 2, поэтому переключатель назначает день = «понедельник».

switch..case в строке

Как переключить оператор на строку Java

Операторы switch с примерами String были реализованы в Java SE 7, по крайней мере, через 16 лет после их первого запроса. Явная причина задержки не была предоставлена, но, скорее всего, это связано с производительностью.

 
class TestClass
{
  public static void main (String[] args)
  {
    String inGrade = "A";
    String message;
    switch (inGrade) {
      case "A+":
         message = "Excellent !!";
         break;
      case "A":
         message = "Very Good !!";
         break;
      case "B":
         message = "Good  !!";
         break;
      case "C":
         message = "Passed  !!";
         break;
      case "D":
         message = "Failed  !!";
         break;
      default: message = "Invalid entry";
         break;
    }
    System.out.println(message);
  }
}

Вывод:

 
Very Good !!

Коммутаторы на основе целых чисел могут быть оптимизированы для очень эффективного кода. Переключатели на основе другого типа данных могут быть скомпилированы только в ряд операторов if(). По этой причине C & C ++ разрешает только переключатели только для целочисленных типов.

Источник: http://net-informations.com/Java/sts/Java-switch.htm

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector