Книга: Основы программирования на Java
4.5. Тернарный оператор if-then-else
4.5. Тернарный оператор if-then-else
Общая форма оператора if-then-else такова:
Выражение1 ? Выражение2 : выражениеЗ
В качестве первого операнда — «выражение 1» — может быть использовано любое выражение, результатом которого является значение типа boolean. Если результат равен true, то выполняется оператор, заданный вторым операндом, то есть «выражение2». Если же первый операнд равен false, то выполняется третий операнд — «выражениеЗ». Второй и третий операнды, то есть «выра- жение2» и «выражениеЗ», должны возвращать значения одного типа и не должны иметь тип void. В приведенной ниже программе этот оператор используется для проверки делителя перед выполнением операции деления. В случае нулевого делителя возвращается значение 0.
class Ternary {
public static void main(String args[]) {
int a = 42;
int b = 2;
int с = 99;
int d = 0;
int e = (b == 0) ? 0 : (a / b);
int f = (d == 0) ? 0 : (c / d);
System.out.print("a = " + a);
System.out.print("b = " + b);
System.out.print("c = " + c);
System.out.print("d = " + d);
System.out.print("a / b = " + e);
System.out.println("c / d = " + f);
}
}
При выполнении этой программы исключительной ситуации деления на нуль не возникает, и выводятся следующие результаты:
a = 42
b = 2
c = 99
d = 0
a/b = 21
c/d = 0
- 4.1. Арифметические операторы
- 4.1.1. Оператор деления по модулю
- 4.1.2. Арифметические операторы присваивания
- 4.1.3. Инкремент и декремент
- 4.2. Целочисленные битовые операторы
- Таблица 4.2. Операторы битовой арифметики
- 4.3. Операторы отношений
- 4.4. Булевы логические операторы
- 4.5. Тернарный оператор if-then-else
- 4.6. Приоритеты операторов
- 4.4. Булевы логические операторы
- 4.2. Целочисленные битовые операторы
- Арифметические операторы
- 1.2.4. Операторы и приоритеты
- Условные операторы
- 1. Оператор Select – базовый оператор языка структурированных запросов
- Поразрядные операторы
- Оператор цикла foreach
- Логические операторы
- Оператор goto
- 3.3 Конструкция else-if
- File System Authentication and Access Control