Статьи

Заявление Явы за пять минут

Условные операторы являются фундаментальными для императивных языков программирования , включая Java. Они используются для инструктирования программы по-разному в зависимости от того, является ли что-то истинным или ложным. Java-оператор if

Чтобы следовать, вам необходимо иметь базовые знания о равенстве, реляционных и условных операторах и о том, как формировать с ними логические выражения . Вы должны хорошо идти, если понимаете, почему 1 > 0truenum == 5falsenum5

Заявление if

Оператор if Как только вы это поймете, остальные придут легко. По сути, оператор if

Здесь вы можете увидеть анатомию оператора if

 int num = 5;

if (num == 5) {
    System.out.println("This message gets printed because num is 5.");
}

Переменная num5 После этого следует утверждение if

Он начинается с ключевого слова, if Между скобками нужно указать условие . Условие — это логическое выражение, которое оценивается как truefalse Это может быть переменная типа booleanравенство, реляционные или условные выражения (например, num == 5boolean Булевы обертки объекта также допустимы.

После скобок вы можете увидеть пару фигурных скобок, определяющих блок кода, часто называемый блоком if или ветвью if . Этот код выполняется только в том случае, если условие оценивается как true

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

Оператор if-else

Во многих случаях вы можете захотеть сделать две разные вещи в зависимости от того, является ли условие истинным или нет. Обычно это называют « ifelse Если условие выполняется, то выполните следующий блок команд, в противном случае ( иначе ) выполните другой блок, часто называемый блоком else или ветвью else . При этом вы можете дополнительно указать альтернативный путь выполнения, который будет использоваться, если условие оценивается как false

 int num = 5;

if (num > 10) {
    // if branch
    System.out.println(
            "This will not be printed, since num is not greater than 10.");
} else {
    // else branch
    System.out.println(
            "This will be printed because the condition is false.");
}

Этот пример довольно похож на предыдущий — снова объявляется num5 Но на этот раз логический тест немного отличается! Только если num10true Поскольку это не так, тест оценивается как false В соответствии с правилами, которые мы определили ранее, следующий блок кода не может быть выполнен. Вместо этого выполнение программы сразу переходит к блоку elsefalse

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

Иногда вам может потребоваться протестировать несколько логических выражений, поэтому просто, ifelse Например, если условие выполняется, то сделать что-то, иначе, если выполняется другое условие, сделать это другим. Конечно, вы можете вложить новый оператор ifelse

Вместо этого в Java распространена практика вытягивать второй, ifelse Это позволяет проверять множество условий и выбирать первый блок кода, который проходит свой логический тест.

 String callsign = "Maverick";

if ("Iceman".equals(callsign)) {
    System.out.println("You must be Lt. Tom Kazanski");
}
else if ("Maverick".equals(callsign)) {
    System.out.println("You must be Lt. Pete Mitchell");
}
else {
    System.out.println("I'm sorry, I believe we have not met");
}

В этом примере у нас есть callsign Программа сначала проверяет, равен ли он "Iceman" Это, очевидно, возвращает falseelseif Затем callsign"Maverick" Это возвращает true

Вы можете использовать оператор elsetrue В цепочке if-else-if

Если операторы являются переходами в вашем коде

Резюме

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

Хотя в этой статье представлен обзор вариантов операторов if Прежде всего, мы не говорили о троичном операторе , который можно обобщить как сокращение для оператора if Длинное else ifоператорами switch . И иногда даже можно избежать, ifдинамическую диспетчеризацию .