Все разделы
Выбрать школу

Школа. Увлечения. Большое будущее.

PROSCHOOLS · ОБРАЗОВАНИЕ РЯДОМ

Ваш город

Выберите город, чтобы находить образование и возможности рядом.

Как учитываем городКаталог и кнопки «Выбрать школу» покажут школы выбранного города.Онлайн-курсы, учебник, ГДЗ и задания к экзаменам доступны по всей России.

Популярные города

Будет выбран: Вся Россия

Учебные материалы останутся прежними.

Поиск по сайту

По всему сайтуШколы выбранного города — выше в результатах

С чего начнём?

↑ ↓ — выбрать результат · Enter — открыть · Esc — закрыть

If и else в Java: условия, границы и порядок ветвей

💻 Информатика · 9 класс

Boolean, цепочка else if и независимые проверки: как выбрать нужную ветвь.

Клавиатура в компьютерном классе
Иллюстрация к предмету «Информатика»Hmartil · Wikimedia Commons · CC BY-SA 4.0

Условие должно быть логическим

Оператор if выполняет блок, если условие равно true. При false блок пропускается, а при наличии else выполняется альтернативный. В Java условие имеет тип boolean: число 1 не является заменой true. Это отличает Java от C, где ноль и ненулевые скалярные значения интерпретируются в условии иначе.

Сравнение записывают двумя знаками равенства: age == 12. Один знак = означает присваивание. Для строк сравнение содержимого обычно выполняют equals, а не ==, которое сравнивает ссылки.

Пример классификации

int score = 75;
if (score >= 80) {
    System.out.println("high");
} else if (score >= 50) {
    System.out.println("middle");
} else {
    System.out.println("low");
}

Результат — middle. Первое условие ложно, второе истинно. После выбора ветви оставшаяся часть цепочки не проверяется. Пример предполагает заранее допустимое значение score; проверка диапазона 0–100 является отдельной задачей.

Почему порядок важен

Если сначала поставить score >= 50, то значение 90 попадёт в эту ветвь и до проверки 80 уже не дойдёт. Для вложенных диапазонов обычно начинают с более строгого верхнего порога или формулируют непересекающиеся интервалы.

Несколько отдельных if работают иначе: каждое условие проверяется независимо. При score = 90 могут выполниться два блока. Выберите конструкцию по смыслу: один из вариантов или несколько одновременно возможных действий.

Составные условия

Логическое И записывается &&, ИЛИ — ||, отрицание — !. Для попадания в диапазон можно использовать score >= 0 && score <= 100. Математическая запись 0<=score<=100 не является правильной цепочкой сравнений Java.

Операторы && и || используют сокращённое вычисление. Например, при text != null && text.length() > 0 длина не вычисляется, если text равен null. Порядок частей здесь помогает избежать обращения через null.

Скобки и вложение

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

Точка с запятой сразу после if создаёт пустой оператор: следующий блок может выполняться независимо от условия. Отступы помогают чтению, но сами по себе не меняют структуру Java.

Разобранная проверка границы

При score = 50 первое условие приведённого примера остаётся ложным, второе истинно, поэтому результат middle. При 49 — low. Пара 49/50 проверяет именно границу и полезнее двух случайных значений 60 и 70.

Практика

  1. Что выведет цепочка для score = 80?
  2. Выполнятся ли две ветви одной else-if цепочки?
  3. Как проверить диапазон 10–20 включительно?

Ответы

1. high: первое условие включает 80. 2. Нет: выбирается первая подходящая ветвь. 3. x >= 10 && x <= 20. Обе границы нужно проверить отдельными сравнениями. Затем полезно проверить 9,10,20 и 21.

Связанные материалы

Источники и материалы