На этом шаге мы рассмотрим условный оператор
Условный оператор в Java имеет следующий вид:
if (условие) оператор1; else оператор2;
Смысл условного оператора следующий: если будет истинно условие, то будет выполнен оператор1, иначе будет выполен оператор2.
В программах на Java, как и на большинстве других языков программирования, часто приходится выполнять несколько операторов в зависимости от истинности условия. В таком случае составляется блок операторов, как это показано на примере ниже.
if (условие) { оператор1; оператор2; ... } else { оператор1; оператор2; ... }
Также условие может состоять из нескольких под условий. В таком случае используют логические операции. Приведем ниже пример, в котором мы будем расчитывать модуль числа.
public class PrimerAbs { public static void main(String[] args) { int a = -20; int b = 101; int c = -192; int d = 123; if (a < 0) { /*Если a меньше 0, то изменим знак числа на противоположный*/ a *=-1; } if (b < 0) { /*Если b меньше 0, то изменим знак числа на противоположный*/ b *=-1; } if (c < 0) { /*Если c меньше 0, то изменим знак числа на противоположный*/ c *=-1; } if (d < 0) { /*Если d меньше 0, то изменим знак числа на противоположный*/ d *=-1; } System.out.println("|a| = " + a); /*Выведим значение модуля числа a*/ System.out.println("|b| = " + b); /*Выведим значение модуля числа b*/ System.out.println("|c| = " + c); /*Выведим значение модуля числа c*/ System.out.println("|d| = " + d); /*Выведим значение модуля числа d*/ } }
Полный проект можно взять здесь.
Рис. 1. Вывод программы
Бывает полезным использовать, так называемый, тернарный оператор. Тернарный оператор имеет следующий вид:
(условие) ? выражение1 : выражение2;
Смысл такого оператора следующий: если условие истинно, то результатом оператора будет выражение1, иначе выражение2.
Перепишем пример, приведенный выше, используя тернарный оператор:
public class PrimerAbs2 { public static void main(String[] args) { int a = -120; int b = 1101; int c = -1921; int d = 1234; a = (a < 0) ? -a : a; /*Если a меньше 0, то результатом оператора будет -a, иначе вернем a*/ b = (b < 0) ? -b : b; /*Если b меньше 0, то результатом оператора будет -b, иначе вернем b*/ c = (c < 0) ? -c : c; /*Если c меньше 0, то результатом оператора будет -c, иначе вернем c*/ d = (d < 0) ? -d : d; /*Если d меньше 0, то результатом оператора будет -d, иначе вернем d*/ System.out.println("|a| = " + a); /*Выведим значение модуля числа a*/ System.out.println("|b| = " + b); /*Выведим значение модуля числа b*/ System.out.println("|c| = " + c); /*Выведим значение модуля числа c*/ System.out.println("|d| = " + d); /*Выведим значение модуля числа d*/ } }
Полный проект можно взять здесь.
Рис. 2. Вывод программы
На следующем шаге мы рассмотрим оператор для множественного выбора