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
операторы.