Switch-выражения
String season = switch (month) {
case JANUARY, FEBRUARY -> "winter";
case MARCH, APRIL, MAY -> "spring";
case JUNE, JULY, AUGUST -> "summer";
case SEPTEMBER, OCTOBER, NOVEMBER -> {
System.out.println("winter is coming!");
yield "autumn";
}
case DECEMBER -> "winter";
}
Чтобы получить значение из switch-выражения, раньше приходилось создавать отдельную переменную и постоянно использовать break;.
В Java 14 появился новый формат записи, который помогает получать результат выбора и записывать выражение компактнее.
Если перечислены все возможные варианты, ветка default теперь не нужна.
Если в значение (case) нужно записать выражение, его заключают в фигурные скобки {} и для возврата значения используют ключевое слово yield.