У цьому підручнику ви дізнаєтеся про оператори керування потоком за допомогою Java, якщо і якщо … ще, за допомогою прикладів.
У комп'ютерному програмуванні ми використовуємо оператор if для управління потоком програми. Наприклад, якщо виконується певна умова, запустіть певний блок коду. В іншому випадку запустіть інший код.
Наприклад, присвоєння оцінок (A, B, C) на основі відсотків, отриманих студентом.
- якщо відсоток перевищує 90 , присвоюйте оцінку А
- якщо відсоток перевищує 75 , присвоюйте оцінку B
- якщо відсоток вище 65 , присвоюйте оцінку С
У if… else
Java є три форми тверджень.
- якщо твердження
- якщо … ще твердження
- if … else if … else твердження
- Вкладено оператор if … else
1. Заява про Java if (якщо-тоді)
Синтаксис оператора if-then :
if (condition) ( // statements )
Тут умова є логічним виразом. Повертається або true
або false
.
- якщо умова обчислюється
true
,if
виконуються оператори всередині тіла - якщо умова оцінюється як
false
, оператори всередині тілаif
пропускаються
Як якщо оператор працює?

Приклад 1: Java if Statement
class IfStatement ( public static void main(String() args) ( int number = 10; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) System.out.println("Statement outside if block"); ) )
Вихідні дані
Цифра позитивна. Заява поза блоком if
У наведеному вище прикладі ми створили змінну з іменем number. Зверніть увагу на стан тесту,
number> 0
Тут умовою є перевірка, чи число більше за 0 . Оскільки число більше ніж 0 , умова обчислюється true
.
Якщо ми змінимо змінну на від’ємне ціле число. Скажімо -5 .
int number = -5;
Тепер, коли ми запускаємо програму, результат буде:
Statement outside if block
Це тому, що значення числа менше 0 . Отже, умова оцінюється як false
. І, тіло if
блоку пропускається.
Примітка . Щоб дізнатись про вираз умови, відвідайте Java Relational Operators і Java Logical Operators.
Ми також можемо використовувати Java Strings як умову тесту.
Приклад 2: Java, якщо з рядком
class Main ( public static void main(String() args) ( // create a string variable String language = "Java"; // if statement if (language == "Java") ( System.out.println("Best Programming Language"); ) ) )
Вихідні дані
Найкраща мова програмування
У наведеному вище прикладі ми порівнюємо два рядки в if
блоці.
2. Заява про if … else (if-then-else)
Оператор if
виконує певний розділ коду, якщо обчислюється тестовий вираз true
. Однак якщо тестовий вираз оцінюється false
, він нічого не робить.
У цьому випадку ми можемо використовувати необов’язковий else
блок. Заяви всередині тіла else
блоку виконуються, якщо оцінюється тестовий вираз false
. Це відомо як оператор if-… else у Java.
Синтаксис оператора if … else є:
if (condition) ( // codes in if block ) else ( // codes in else block )
Тут програма виконає одне завдання (коди всередині if
блоку), якщо умова є, true
а інше завдання (коди всередині else
блоку), якщо умова є false
.
Як працює оператор if … else?

Приклад 3: Заява про Java, якщо … ще
class Main ( public static void main(String() args) ( int number = 10; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) // execute this block // if number is not greater than 0 else ( System.out.println("The number is not positive."); ) System.out.println("Statement outside if… else block"); ) )
Вихідні дані
Цифра позитивна. Заява поза блоком if … else
У наведеному вище прикладі ми маємо змінну з іменем number. Тут тестовий вираз number> 0
перевіряє, чи число більше за 0.
Оскільки значення числа дорівнює 10, тестовий вираз має значення true
. Звідси if
виконується код всередині тіла .
Тепер змініть значення числа на ціле від’ємне число. Скажімо -5.
int number = -5;
Якщо ми запустимо програму з новим значенням числа, результат буде:
Кількість не є позитивною. Заява поза блоком if … else
Тут значення числа дорівнює -5. Тож тестовий вираз має значення false
. Звідси else
виконується код всередині тіла .
3. Java, якщо … ще … якщо заява
У Java ми маємо драбину if … else … if , яку можна використовувати для виконання одного блоку коду серед безлічі інших блоків.
if (condition1) ( // codes ) else if(condition2) ( // codes ) else if (condition3) ( // codes )… else ( // codes )
Тут if
оператори виконуються зверху вниз. Коли умова тесту є true
, if
виконуються коди всередині тіла цього блоку. І, контроль програми стрибає за межі, якщо … ще … якщо сходи.
Якщо всі тестові вирази є false
, виконуються коди всередині тіла else
.
Як якщо… інакше… якщо сходи працює?

Приклад 4: Java if … else … if Statement
class Main ( public static void main(String() args) ( int number = 0; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) // checks if number is less than 0 else if (number < 0) ( System.out.println("The number is negative."); ) // if both condition is false else ( System.out.println("The number is 0."); ) ) )
Вихідні дані
Число дорівнює 0.
In the above example, we are checking whether number is positive, negative, or zero. Here, we have two condition expressions:
number> 0
- checks if number is greater than 0number < 0
- checks if number is less than 0
Here, the value of number is 0. So both the conditions evaluate to false
. Hence the statement inside the body of else
is executed.
Note: Java provides a special operator called ternary operator, which is a kind of shorthand notation of if… else… if statement. To learn about the ternary operator, visit Java Ternary Operator.
4. Java Nested if… else Statement
У Java також можна використовувати if… else
оператори всередині if… else
оператора. Це називається вкладеним if… else
оператором.
Ось програма для пошуку найбільшого з 3 чисел за допомогою вкладеного if… else
оператора.
Приклад 5: Вкладено заяву if … else
class Main ( public static void main(String() args) ( // declaring double type variables Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largest; // checks if n1 is greater than or equal to n2 if (n1>= n2) ( // if… else statement inside the if block // checks if n1 is greater than or equal to n3 if (n1>= n3) ( largest = n1; ) else ( largest = n3; ) ) else ( // if… else statement inside else block // checks if n2 is greater than or equal to n3 if (n2>= n3) ( largest = n2; ) else ( largest = n3; ) ) System.out.println("Largest Number: " + largest); ) )
Вихід :
Найбільша кількість: 4.5
У вищезазначених програмах ми самі призначили значення змінних, щоб полегшити це.
Однак у реальних додатках ці значення можуть походити із введених користувачем даних, файлів журналів, подання форми тощо.