Условный оператор if позволяет выборочно выполнять отдельные части программы. Условные операторы часто называют операторами принятия решения и это ближе к тому что по сути из себя представляет оператор if.
Ведь вся его логика состоит в проверке условия и если то истинно - выполняется блок кода, если же условие ложно блок оператора if просто пропускается.
Синтаксис оператора if:
if (условие) {
последовательность_операторов;
}
В данном случае условие обозначает логическое выражение. Если условие истинно (true), последовательность операторов выполняется, если ложно (false) – не выполняется.
Пример:
public class FirstApp {
public static void main(String args[]) {
if (5 < 10) {
System.out.println("5 меньше 10");
}
}
}
В данном примере числовое значение 5 меньше 10, поэтому условное выражение принимает логическое значение true, а следовательно, выполняется метод System.out.println().
Пример с ложным условием:
public class FirstApp {
public static void main(String args[]) {
if (10 < 5) {
System.out.println("Это сообщение никогда не будет
выведено"); }
}
}
И это сообщение правда никогда не выведется в консоль потому что оно ложно.
В Java помимо простых операторов сравнения (<,>) могут быть использованы также и:
< - Меньше
<= - Меньше или равно
> - Больше
>= - Больше или равно
== - Равно
!= - Не равно
Важно, что для проверки на равенство указывается два знака равно. На это всегда нужно обращать внимание при написании условия.
При использовании условий можно составлять более сложные конструкции с помощью логических операторов И(&&) и ИЛИ(||).
- && - Называется логический оператор «И». Если оба операнда являются не равны нулю, то условие становится истинным. (A && B) – значение false.
- || - Называется логический оператор «ИЛИ». Если любой из двух операндов не равен нулю, то условие становится истинным. (A || B) – значение true.
- ! - Называется логический оператор «НЕ». Использование меняет логическое состояние своего операнда. Если условие имеет значение true, то оператор логического «НЕ» будет делать false. !(A && B) – значение true.
Следующий простой пример показывает, программно логические операторы в Java:
public class Test {
public static void main(String args[]) {
boolean a = true;
boolean b = false;
System.out.println("a && b = " + (a&&b));
System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));
}
}
Вывод:
a && b = false
a || b = true
!(a && b) = true
В Java оператор if может сопровождаться дополнительным оператором else, который выполняется при ложном логическое выражение.
Синтаксис:
if (Логическое выражение){
//Выполняется, если истинно
} else{
//Выполняется, если ложно
}
Если логическое выражение истинно, то блок кода if будет выполнен, в противном случае будет выполнен блок кода else.
Пример:
public class Test {
public static void main(String args[]){
int x = 30;
if( x < 20 ){
System.out.print("Это оператор if");
}else{
System.out.print("Это оператор else");
}
}
}
Оператор if может сопровождаться дополнительным оператором else if..else, который является очень полезным для тестирования различных условиях с использованием одного оператора if..else if.
При использовании операторов if, else if, else в Java есть несколько моментов, которые необходимо иметь в виду:
- if может иметь ноль или один else, который должен идти после любого if.
- if может иметь ноль для многих else, и он должен идти до else.
- после того как if...else будет успешно выполнен, из оставшихся else if или else ничто выполнено не будет (проверено).
Пример:
public class Test {
public static void main(String args[]){
int x = 30;
if( x == 10 ){
System.out.print("Значение X = 10");
}else if( x == 20 ){
System.out.print("Значение X = 20");
}else if( x == 30 ){
System.out.print("Значение X = 30");
}else{
System.out.print("Это оператор else");
}
}
}
Значение X = 30
В Java всегда допустимы вложенные операторы if-else, которые означают, что Вы можете использовать один оператор if или else внутри другого оператора if или else.
Синтаксис вложенного оператора if..else в Java следующий:
if (Логическое выражение 1){
//Выполняется, если логическое выражение 1 истинно
if (Логическое выражение 1){
//Выполняется, если логическое выражение 2 истинно
}
}
Вы можете делать вложенным else if...else аналогично тому, как мы делали вложенным оператор if в Java.
Пример:
public class Test {
public static void main(String args[]){
int x = 30;
int y = 10;
if( x == 30 ){
if( y == 10 ){
System.out.print("X = 30 и Y = 10");
}
}
}
}
X = 30 и Y = 10
Вторая статья
Четвертая статья