Java Else If
The else if Statement
Use the else if statement to specify a new condition
to test if the first condition is false.
Syntax
if (condition1) {
// block of code to be executed if condition1 is true
} else if (condition2) {
// block of code to be executed if condition1 is false and condition2 is true
} else {
// block of code to be executed if both conditions are false
}
Think of it like real life: If it rains, bring an umbrella. Else if it is sunny, wear sunglasses. Else, just go outside normally.
Example
Example
int weather = 2; // 1 = raining, 2 = sunny, 3 = cloudy
if (weather == 1) {
System.out.println("Bring an umbrella.");
} else if (weather == 2) {
System.out.println("Wear sunglasses.");
} else {
System.out.println("Just go outside normally.");
}
// Outputs "Wear sunglasses."
Since weather is 2, the first condition (weather == 1) is not met, so the if block is skipped.
The program then checks the else if condition (weather == 2), which is true.
That means the else if block runs and prints "Wear sunglasses.".
Another Example
This example chooses between three different messages depending on the time of day:
Example
int time = 16;
if (time < 12) {
System.out.println("Good morning.");
} else if (time < 18) {
System.out.println("Good day.");
} else {
System.out.println("Good evening.");
}
// Outputs "Good day."
Example explained
The value of time is 16.
The first condition (time < 12) is false,
but the second condition (time < 18) is true.
Because of this, the else if block runs
and prints "Good day.".
If the value of time was 22,
none of the conditions would be true,
and the program would print "Good evening." instead:
Example
int time = 22;
if (time < 12) {
System.out.println("Good morning.");
} else if (time < 18) {
System.out.println("Good day.");
} else {
System.out.println("Good evening.");
}
// Outputs "Good day."