Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

yield

Возвращает значение из блока внутри switch-выражения.

Доступно с: Java 14

Синтаксис

case X -> { …; yield value; }

Примеры

Ветка из нескольких инструкций возвращает значение через yield:

void main() {
    int code = 404;
    String message = switch (code) {
        case 200 -> "OK";
        case 404 -> {
            String text = "Not Found";
            yield code + " " + text;
        }
        default -> "Unknown";
    };
    IO.println(message);
}

Результат:

404 Not Found

Примечания

В ветке со стрелкой и одним выражением yield не нужен. В старой форме switch-выражения с двоеточием yield обязателен в каждой ветке: case 1: yield "one";. return внутри switch-выражения писать нельзя — он завершил бы весь метод.

См. также

  • switch — Выбирает ветку по значению; в форме выражения возвращает результат.

В учебнике

  • switch — Оператор switch в Java: стрелочные метки, несколько значений в case, switch-выражение с возвратом значения, yield и классическая форма с break.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.