1. Оператор if-else

Від програм було б мало користі, якби вони робили абсолютно одне й те саме незалежно від зміни зовнішніх обставин. Потрібно, щоб програма вміла підлаштовуватися під різні ситуації та виконувати одні дії в одних випадках, а інші — в інших.

У Java це реалізовано за допомогою умовного оператора — спеціального ключового слова, яке дає змогу виконувати різні блоки команд залежно від правдивості умови.

Умовний оператор складається з трьох частин: умови, команди 1 і команди 2. Якщо умова правдива (істинна), виконується команда 1, інакше — команда 2. Команди ніколи не виконуються одночасно. Загальний вигляд цього оператора такий:

if (умова)
   команда1;
else
   команда2;
Умовний оператор if-else

if перекладається як «якщо», а else — як «інакше». Людською мовою це можна записати так:

Якщо умова істинна, то
   виконати команда1;
інакше
   виконати команда2;
Умовний оператор if-else людською мовою

Приклади:

Код Пояснення
int age = 17;
if (age < 18)
   System.out.println("Ви ще дитина");
else
   System.out.println("Ви вже дорослий");
На екран буде виведено напис:
Ви ще дитина
int temperature = 5;
if (temperature < 0)
   System.out.println("На вулиці мороз");
else
   System.out.println("Тепло");
На екран буде виведено напис:
Тепло
int age = 18;
if (age == 18)
   System.out.println("З'явіться до військкомату");
else
   System.out.println("Все одно з'явіться");
На екран буде виведено напис:
З'явіться до військкомату


2. Блок команд

Якщо ви хочете, щоб у разі виконання (або невиконання) умови ваша програма виконала кілька команд, їх можна об'єднати в блок команд.

Щоб об'єднати команди в блок, потрібно «загорнути» їх у фігурні дужки. Отак це виглядає в загальному випадку:

{
   команда1;
   команда2;
   команда3;
}

Команд у блоці може бути скільки завгодно. І навіть нуль.

Приклади поєднання оператора if-else і блоку команд:

Код Пояснення
int age = 17;
if (age < 18)
{
   System.out.println("Ти ще дитина");
   System.out.println("Не сперечайся з дорослими");
}
else
{
   System.out.println("Ви вже дорослий");
   System.out.println("Отака молодь пішла");
}
На екран буде виведено напис:
Ти ще дитина
Не сперечайся з дорослими
int temperature = 5;
if (temperature < 0)
{
   System.out.println("На вулиці мороз");
   System.out.println("Шапку надінь");
}
else
   System.out.println("Тепло");
На екран буде виведено напис:
Тепло
int age = 21;
if (age == 18)
   System.out.println("З'явіться до військкомату");
else
{
}
Буде виконано порожній блок команд.
На екран не виведеться нічого.

3. Скорочена форма оператора if

Трапляються випадки, коли якусь команду або команди потрібно виконати, якщо умова істинна, а якщо вона хибна, то нічого робити не треба.

Наприклад, ми можемо створити команду Якщо приїхав автобус номер 62, зайти в нього, а на відсутність автобуса жодним чином не реагувати. У Java за такого розвитку подій можна використовувати скорочену форму оператора if — без блоку else.

Інакше кажучи, якщо команду (-и) потрібно виконувати лише в разі, коли умова істинна, і немає команд, які потрібно виконувати, коли умова хибна, потрібно використовувати скорочений запис оператора if — без блоку else. Скорочений запис має такий вигляд:

if (умова)
   команда1;
Умовний оператор if

Нижче наведено три еквівалентні записи:

Код Пояснення
int age = 18;
if (age == 18)
{
   System.out.println("З'явіться до військкомату");
}
else
{
}
На екран буде виведено напис:
З'явіться до військкомату

Блок else у програмі є, але він порожній (між фігурними дужками немає жодної команди). Його можна просто прибрати, у програмі від цього нічого не зміниться.

Код Пояснення
int age = 18;
if (age == 18)
{
   System.out.println("З'явіться до військкомату");
}
На екран буде виведено напис:
З'явіться до військкомату
int age = 18;
if (age == 18)
   System.out.println("З'явіться до військкомату");
На екран буде виведено напис:
З'явіться до військкомату