Найти тему
Javista

Java level one. Условный оператор if.

Условный оператор if позволяет выборочно выполнять отдельные части программы. Условные операторы часто называют операторами принятия решения и это ближе к тому что по сути из себя представляет оператор if.

Ведь вся его логика состоит в проверке условия и если то истинно - выполняется блок кода, если же условие ложно блок оператора if просто пропускается.

Эта схема хорошо отражает суть условного оператора как и цикла.
Эта схема хорошо отражает суть условного оператора как и цикла.

Синтаксис оператора if:

if (условие) {
последовательность_операторов;
}

В данном случае условие обозначает логическое выражение. Если условие истинно (true), последовательность операторов выполняется, если ложно (false) – не выполняется.

Пример:

public class FirstApp {
public static void main(String args[]) {
if (5 < 10) {
System.out.println("5 меньше 10");
}
}
}

В данном примере числовое значение 5 меньше 10, поэтому условное выражение принимает логическое значение true, а следовательно, выполняется метод System.out.println().

Пример с ложным условием:

public class FirstApp {
public static void main(String args[]) {
if (10 < 5) {
System.out.println("Это сообщение никогда не будет
выведено"); }
}
}

И это сообщение правда никогда не выведется в консоль потому что оно ложно.

В Java помимо простых операторов сравнения (<,>) могут быть использованы также и:

< - Меньше
<= - Меньше или равно
> - Больше
>= - Больше или равно
== - Равно
!= - Не равно

Важно, что для проверки на равенство указывается два знака равно. На это всегда нужно обращать внимание при написании условия.

При использовании условий можно составлять более сложные конструкции с помощью логических операторов И(&&) и ИЛИ(||).

  • && - Называется логический оператор «И». Если оба операнда являются не равны нулю, то условие становится истинным. (A && B) – значение false.
  • || - Называется логический оператор «ИЛИ». Если любой из двух операндов не равен нулю, то условие становится истинным. (A || B) – значение true.
  • ! - Называется логический оператор «НЕ». Использование меняет логическое состояние своего операнда. Если условие имеет значение true, то оператор логического «НЕ» будет делать false. !(A && B) – значение true.

Следующий простой пример показывает, программно логические операторы в Java:

public class Test {
public static void main(String args[]) {
boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a&&b));
System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));
}
}
Вывод:
a && b = false
a || b = true
!(a && b) = true

В Java оператор if может сопровождаться дополнительным оператором else, который выполняется при ложном логическое выражение.

Синтаксис:

if (Логическое выражение){
//Выполняется, если истинно
} else{
//Выполняется, если ложно
}

Если логическое выражение истинно, то блок кода if будет выполнен, в противном случае будет выполнен блок кода else.

Пример:

public class Test {
public static void main(String args[]){
int x = 30;
if( x < 20 ){
System.out.print("Это оператор if");
}else{
System.out.print("Это оператор else");
}
}
}

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

При использовании операторов if, else if, else в Java есть несколько моментов, которые необходимо иметь в виду:

  • if может иметь ноль или один else, который должен идти после любого if.
  • if может иметь ноль для многих else, и он должен идти до else.
  • после того как if...else будет успешно выполнен, из оставшихся else if или else ничто выполнено не будет (проверено).

Пример:

public class Test {
public static void main(String args[]){
int x = 30;
if( x == 10 ){
System.out.print("Значение X = 10");
}else if( x == 20 ){
System.out.print("Значение X = 20");
}else if( x == 30 ){
System.out.print("Значение X = 30");
}else{
System.out.print("Это оператор else");
}
}
}
Значение X = 30

В Java всегда допустимы вложенные операторы if-else, которые означают, что Вы можете использовать один оператор if или else внутри другого оператора if или else.

Синтаксис вложенного оператора if..else в Java следующий:

if (Логическое выражение 1){
//Выполняется, если логическое выражение 1 истинно
if (Логическое выражение 1){
//Выполняется, если логическое выражение 2 истинно
}
}

Вы можете делать вложенным else if...else аналогично тому, как мы делали вложенным оператор if в Java.

Пример:

public class Test {
public static void main(String args[]){
int x = 30;
int y = 10;
if( x == 30 ){
if( y == 10 ){
System.out.print("X = 30 и Y = 10");
}
}
}
}
X = 30 и Y = 10

Вторая статья

Четвертая статья