1.4. Управляющие конструкции
Определение управляющих конструкций в Java практически во всём совпадает с C++.
Условные конструкции if … else. Наиболее распространённой формой управляющих структур является конструкция if … else, синтаксис которой выглядит следующим образом:
if (БулевскоеВыражение) {
Инструкции1;
} else {
Инструкции2;
}
Сначала осуществляется проверка значения булевского выражения. Если результат равен true, выполняется блок Инструкции1, в противном случае (и при наличии предложения else) – блок Инструкции2. Предложение else может быть пропущено, при этом конструкция if … else принимает более краткий вид:
if (БулевскоеВыражение) {
Инструкции;
}
int m = 4;
if (m == 4) {
System.out.println("April");
}
run: April
В этом случае при ложном значении булевского выражения никаких операций не выполняется. Возможна также и вложенность конструкций if … else:
if (БулевскоеВыражение1) {
Инструкции1
} else if (БулевскоеВыражение2) {
Инструкции2
} else {
Инструкции3
}
int month = 4;
String season;
if (month == 12 || month == 1 || month == 2) {
season = "Winter";
} else if (month == 3 || month == 4 || month == 5) {
season = "Spring";
} else if (month == 6 || month == 7 || month == 8) {
season = "Summer";
} else if (month == 9 || month == 10 || month == 11) {
season = "Autumn";
} else {
season = "Bogus Month";
}
System.out.println("April is in the " + season + ".");
run: April is in the Spring.
Некоторым аналогом конструкции if … else является операция «?» со следующим синтаксисом:
БулевскоеВыражение ? Значение1 : Значение2
где Значение1, Значение2 – вычисляемые значения одного типа.
Результатом этой операции будет Значение1, если БулевскоеВыражение истинно, в противном случае –Значение2.