Изявление за Java if ... else (с примери)

В този урок ще научите за операторите за контрол на потока, използващи Java, ако и ако … else, с помощта на примери.

При компютърното програмиране използваме оператора if, за да контролираме потока на програмата. Например, ако е изпълнено определено условие, изпълнете определен блок код. В противен случай стартирайте друг код.

Например присвояване на оценки (A, B, C) въз основа на процент, получен от студент.

  • ако процентът е над 90 , дайте оценка А
  • ако процентът е над 75 , дайте оценка B
  • ако процентът е над 65 , дайте оценка C

В if… elseJava има три форми на изявления.

  1. ако изявление
  2. ако … друго изявление
  3. if … else if … else изявление
  4. Вложен ако… друго изявление

1. Изявление за Java if (ако-тогава)

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

 if (condition) ( // statements )

Тук условието е булев израз. Връща или trueили false.

  • ако условието оценява на true, ifизпълняват се изявления вътре в тялото на
  • ако условието се оценява на false, изявленията вътре в тялото на ifсе пропускат

Как ако операторът работи?

Работа на Java 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"); ) )

Изход

Числото е положително. Изявление отвън, ако блок

В горния пример създадохме променлива с име номер. Забележете състоянието на теста,

 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, ако е със String

 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. Java 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?

Работа на Java if-else инструкции

Пример 3: Java if … else Изявление

 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"); ) )

Изход

Числото е положително. Изявление извън, ако … друго блокира

В горния пример имаме променлива с име номер. Тук тестовият израз number> 0проверява дали числото е по-голямо от 0.

Тъй като стойността на числото е 10, тестовият израз оценява на true. Следователно кодът в тялото на ifсе изпълнява.

Сега променете стойността на числото на отрицателно цяло число. Да кажем -5.

 int number = -5;

Ако стартираме програмата с новата стойност на числото, изходът ще бъде:

Числото не е положително. Изявление отвън, ако … друго блокира

Тук стойността на числото е -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блок се изпълняват. И контролът на програмата скача извън стълбата if … else … if .

Ако всички тестови изрази са false, elseсе изпълняват кодове в тялото на .

Как ако … иначе … ако стълбата работи?

Работа на ако … друго … ако стълба

Пример 4: Java, ако … друго … ако изявление

 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 0
  • number < 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: Вложено, ако … друго изявление

 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

В горните програми сами сме задали стойността на променливите, за да улесним това.

В реални приложения обаче тези стойности могат да идват от потребителски входни данни, регистрационни файлове, подаване на формуляри и т.н.

Интересни статии...