Spec-Zone .ru
спецификации, руководства, описания, API
Содержание документации

Строки в операторах переключения

В JDK 7 выпусков можно использовать a String объект в выражении a switch оператор:

public String getTypeOfDayWithSwitchStatement(String dayOfWeekArg) {
     String typeOfDay;
     switch (dayOfWeekArg) {
         case "Monday":
             typeOfDay = "Start of work week";
             break;
         case "Tuesday":
         case "Wednesday":
         case "Thursday":
             typeOfDay = "Midweek";
             break;
         case "Friday":
             typeOfDay = "End of work week";
             break;
         case "Saturday":
         case "Sunday":
             typeOfDay = "Weekend";
             break;
         default:
             throw new IllegalArgumentException("Invalid day of the week: " + dayOfWeekArg);
     }
     return typeOfDay;
}

switch оператор сравнивается String объект в его выражении с выражениями связался с каждым case маркируйте, как будто это использовало String.equals метод; следовательно, сравнение String объекты в switch операторы являются чувствительными к регистру. Компилятор Java генерирует обычно более эффективный байт-код от switch операторы то использование String объекты чем от цепочечного if-then-else операторы.


Oracle и/или его филиалы Авторское право © 1993, 2012, Oracle и/или его филиалы. Все права защищены.
Свяжитесь с Нами