Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvPmCdTrn 120 of 420 menu
◀ ▶

Тернарный оператор в Java

Пусть у нас есть следующий код, проверяющий, есть ли уже пользователю 18 лет или нет:

int age = 17; boolean adult = false; if (age >= 18) { adult = true; } else { adult = false; // сработает это } System.out.println(adult); // выведет false

Как вы видите, конструкция if-else нужна только для того, чтобы записать определенное значение в переменную adult. Для таких задач, когда у нас в условии происходит только запись одной переменной, существует более короткое решение через так называемый тернарный оператор.

Слева пишут переменную, затем условие, знак вопроса, значение при ответе «да», двоеточие и значение при ответе «нет».

Оператор работает так: если условие истинно, то возвращается первое значение, в противном случае - второе. Давайте перепишем приведенный в самом начале урока код через тернарный оператор:

int age = 17; boolean adult = age >= 18 ? true : false; System.out.println(adult); // выведет false

Можно не записывать результат в переменную, а сразу вывести его:

int age = 17; System.out.println(age >= 18 ? true : false); // выведет false

Тернарный оператор следует использовать только в самых простых случаях, так как его использование затрудняет понимание кода.

Перепишите следующий код так, чтобы значение сразу записывалось в переменную:

int num = 1; String res = ""; if (num >= 0) { res = "1"; } else { res = "2"; } System.out.println(res);

Пусть дана переменная num, которая может быть либо отрицательной, либо положительной. Запишите в переменную res число 1, если переменная num больше или равна нулю, и число -1, если переменная num меньше нуля.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить