English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной учебник Java

Java Управление потоком

Java Массив

Java Ориентированное на объекты (I)

Java Ориентированное на объекты (II)

Java Ориентированное на объекты (III)

Обработка исключений Java

Java Список (List)

Java Queue (очередь)

Java Map набор

Java Set набор

Java Вход/Выход (I/O)

Java Reader/Writer

Другие темы Java

Конструкция if...else Java

В этом курсе вы узнаете о контролирующих потоках в Java с помощью примеров, используя выражения if и if ... else в Java.

В компьютерном программировании, обычно хочется выполнять определенную часть кода в зависимости от того, является ли указанное условие true или false (только что才知道 в время выполнения). В этом случае используется контрольный поток.

Java if (if-then) expression

В Java,if-thenСинтаксис выражения:

if (expression) {
    // Строка
}

Это булево выражение (expression). Булево выражение возвращает true или false.

  • Если выражение вычислено как true, то выполняются предложения внутри主体的 if (внутренние предложения между скобками)

  • Если результат вычисления выражения false, то предложения внутри主体的 if будут пропущены

Как работает if-выражение?

Как работает Java if-выражение?

Пример 1: Java if-выражение

class IfStatement {
    public static void main(String[] args) {
        int number = 10;
        //Check if the number is greater than 0
        if (number > 0) {
            System.out.println("The number is positive.");
        }
        System.out.println("Эта строка всегда выполняется.");
    }
}

вывод:

Эта цифра является положительным числом.
Эта строка всегда выполняется.

В предыдущем примере у нас есть переменная number. Здесь тестовое выражение проверяет, является ли number больше 0 (number > 0).

Поскольку number больше 0, результат вычисления тестового выражения будет true. В то же время, будет выполнен код внутри if.

Теперь изменяем значение number на отрицательное целое число. Предположим, -5.

int number = -5;

Если мы запустим aforementioned программу number с новым значением, вывод будет следующим:

Эта строка всегда выполняется.

Здесь значение number меньше 0. Поэтому результат вычисления тестового выражения number > 0 составляет false. Таким образом, строки в блоке if не будут выполняться.

Чтобы узнать больше о тестовых выражениях, пожалуйста, посетитеСоотношительные операторы Java  иЛогические операторы Java.

Оператор if ... else (if-then-else) в Java

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

В этом случае мы можем использовать опциональный блок else. Если результат вычисления тестового выражения равен false, выполняется блок体内的语句 else. В Java это называетсяif-then-elseвыражение.

if-then-elseСинтаксис выражения:

if (expression) {
   // Code
}
else {
  // Другой код
}

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

Как работает оператор if... else в Java?

Как работает оператор if-else в Java?

Пример 2: оператор if-else в Java

class IfElse {
    public static void main(String[] args) {    	
        int number = 10;
        //Check if the number is greater than 0
        if (number > 0) {
            System.out.println("Этот номер является положительным.");
        }
        else {
            System.out.println("Этот номер не является положительным.");
        }
 
        System.out.println("This statement is always executed.");
    }
}

вывод:

Этот номер является положительным.
Эта строка всегда выполняется.

В предыдущем примере у нас есть переменная number. Здесь тестовое выражение проверяет, является ли number больше 0 (number > 0).

Поскольку значение number равно 10, результат вычисления тестового выражения составляет true. Таким образом, будет выполнен код в блоке if.

Теперь изменяем значение number на отрицательное целое число. Например, -5.

int number = -5;

Если мы запустим программу number с новым значением, вывод будет следующим:

Этот номер не является положительным.
Эта строка всегда выполняется.

Здесь значение переменной number равно -5. Поэтому результат вычисления тестового выражения составляет false. Таким образом, будет выполнен код в блоке else.

Java if..else..if statements

In Java, we have aif ... else ... if Ladder statements, which can be used to execute one code block among multiple other code blocks.

if (expression1) {
   // Code
}
else if(expression2) {
   // Code
}
else if (expression3) {
   // Code
}
.
.
else {
   // Code
}

Here, the if statements are executed from top to bottom. Once a test expression is true, the code inside the if statement body is executed. Then, the program control jumps outside the if-else-if ladder statements.

If all test expressions are false, execute the code inside the else body.

Example 3: Java if..else..if statements

class Ladder {
    public static void main(String[] args) {   
        int number = 0;
        //Check if the number is greater than 0 
        if (number > 0) {
            System.out.println("The number is positive.");
        }
        //Check if the number is less than 0
        else if (number < 0) {
            System.out.println("The number is negative.");
        }
        else {
            System.out.println("The number is 0.");
        } 
    }
}

вывод:

The number is 0.

In the above example, we are checking whether the variable number is positive, negative, or zero. Here, we have two test expressions:

  • number > 0 - Check if number is greater than 0

  • number < 0 - Check if number is less than 0

Here, the value of number is 0. Therefore, the results of both test expressions are false. Therefore, the statements inside the else body were executed.

Java nested if..else statements

In Java, you can also have if..else statements inside if..else statements. This is called a nested if...else statement.

This is a program to find the largest of three numbers:

Example 4: Nested if ... else statements

class Number {
    public static void main(String[] args) {
        //Declare double precision type variables
        Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largestNumber;
        //Check if n1 is greater than or equal to n2
        if (n1 >= n2) {
            //if ... else statement inside the if block
            // Проверка, является ли n1 больше или равна n3
            if (n1 >= n3) {
                largestNumber = n1;
            }
            else {
                largestNumber = n3;
            }
        }
            // if ... else语句 в блоке else
            // Проверка, является ли n2 больше или равна n3
            if (n2 >= n3) {
                else {
            }
                largestNumber = n3;
            }
        }
        System.out.println("наибольшее число - " + largestNumber);
    }
}

вывод:

наибольшее число - 4.5

Внимание:В上面的 программе мы ourselves распределяем значения переменных, чтобы упростить процесс демонстрации. Однако, в реальных приложениях эти значения могут исходить от данных ввода пользователя, файлов журналов, отправки форм и т.д.

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