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

JavaBeginner
Практиковаться сейчас

Введение

В этом лабе вы научитесь использовать тернарный оператор в Java для замены if-else инструкций. Тернарный оператор используется для записи условных инструкций в одну строку, делая код более чистым и читаемым. Вы научитесь использовать тернарный оператор и как вкладывать его.

Синтаксис тернарного оператора

Тернарный оператор - это сокращенный способ записи if-else инструкций. Синтаксис тернарного оператора следующий:

variable = (condition)? expression1 : expression2;

где condition - это логическое выражение, которое оценивается, expression1 - это значение, присваиваемое variable, если condition истинно, и expression2 - это значение, присваиваемое variable, если condition ложно.

Посмотрим на пример:

int num1 = 50;
int num2 = 100;
int result;

result = (num1 > num2)? num1 : num2;
System.out.println(result);

Результат:

100

В приведенном выше примере, если num1 больше num2, то значение result становится равным num1, в противном случае значение result становится равным num2.

Использование тернарного оператора для замены if-else инструкций

Мы можем использовать тернарный оператор для замены if-else инструкций. Вот пример кода, который использует if-else инструкции для определенияeligibility (подходящейness) человека к голосованию:

int age = 18;
String message;

if (age >= 18) {
    message = "You are eligible to vote";
} else {
    message = "You are not eligible to vote";
}

System.out.println(message);

Результат:

You are eligible to vote

Мы можем заменить вышеприведенный код на одну строку кода, используя тернарный оператор, как показано ниже:

int age = 18;

String message = (age >= 18)? "You are eligible to vote" : "You are not eligible to vote";

System.out.println(message);

Результат:

You are eligible to vote

Вложение тернарного оператора

Мы также можем вкладывать тернарные операторы для записи сложных условных инструкций. Вот пример кода, который использует вложенные if-else инструкции для определения знака числа:

int num = -10;
String sign;

if (num > 0) {
    sign = "Positive";
} else if (num < 0) {
    sign = "Negative";
} else {
    sign = "Zero";
}

System.out.println(sign);

Результат:

Negative

Мы можем заменить вышеприведенный код на одну строку кода, используя вложенные тернарные операторы, как показано ниже:

int num = -10;

String sign = (num > 0)? "Positive" : (num < 0)? "Negative" : "Zero";

System.out.println(sign);

Результат:

Negative

Резюме

В этом лабе вы узнали, как использовать тернарный оператор для замены if-else инструкций в Java. Вы также узнали, как вкладывать тернарный оператор для составных условных инструкций. Однако тернарный оператор имеет некоторые ограничения и может использоваться только для простых if-else инструкций.