A program becomes useful when it can make decisions. In Java, the if statement allows a program to execute a block of code only when a specified condition is true.
Why Do We Need the if Statement?
Real programs constantly make decisions. A login system checks whether a password is correct. A shopping application checks whether a product is available. A banking application checks whether the account has enough balance.
The if statement gives Java the ability to perform this kind of decision-making.
if means: Run this code only if the condition is true.
Real-World Analogy
Imagine you are leaving home. You look outside and think: “If it is raining, I will take an umbrella.”
The decision can be represented as:
If it is raining
Take an umbrella
Java follows the same basic idea. It checks a condition first and executes the code inside the if block only when the condition is true.
Basic Syntax
if (condition) {
// code to execute
}
The condition must produce either true or false. When the result is true, Java executes the statements inside the braces.
Simple Example
int age = 20;
if (age >= 18) {
System.out.println("You are eligible to vote.");
}
Here, Java checks whether age >= 18. Since 20 >= 18 is true, the statement inside the if block executes.
How the if Statement Works
The execution follows a simple sequence:
- Java evaluates the condition.
- The condition produces either true or false.
- If the result is true, the code inside the if block executes.
- If the result is false, Java skips the block and continues with the next statement.
Example with a False Condition
int age = 15;
if (age >= 18) {
System.out.println("You are eligible to vote.");
}
System.out.println("Program continues...");
Here, age >= 18 is false because the value of age is 15. Therefore, Java skips the first System.out.println() and executes the next statement.
Using Comparison Operators
Conditions inside an if statement commonly use comparison operators.
| Operator | Meaning | Example |
|---|---|---|
| > | Greater than | age > 18 |
| < | Less than | age < 18 |
| >= | Greater than or equal to | age >= 18 |
| <= | Less than or equal to | age <= 18 |
| == | Equal to | age == 18 |
| != | Not equal to | age != 18 |
Example: Checking a Number
int number = 10;
if (number > 0) {
System.out.println("Number is positive.");
}
The condition number > 0 is true because 10 is greater than 0. Therefore, the message is printed.
Example: Checking Marks
int marks = 75;
if (marks >= 40) {
System.out.println("Student passed.");
}
This is a common programming pattern. The program checks whether the marks meet the minimum passing requirement. Since 75 is greater than or equal to 40, the condition is true.
Remember: The if statement does not execute its block because the condition looks reasonable to us. Java evaluates the condition and follows its actual boolean result.
Using Logical Operators
An if statement can also combine multiple conditions using logical operators such as &&, ||, and !.
int age = 25;
boolean hasId = true;
if (age >= 18 && hasId) {
System.out.println("Entry allowed.");
}
Here, both conditions must be true because the && operator is used. The person must be at least 18 and must have an ID.
Common Beginner Mistake: Using = Instead of ==
One of the most common mistakes beginners make is confusing assignment with comparison.
int number = 10;
if (number == 10) {
System.out.println("Number is 10.");
}
The single = assigns a value, while == checks whether two values are equal.
= means assignment. == means comparison.
Best Practice
- Keep conditions simple and readable.
- Use braces { } even when the block contains only one statement.
- Choose meaningful variable names so conditions are easy to understand.
- Avoid unnecessarily complicated conditions inside a single if statement.
Interview Insight
A common interview question is: “What happens when the condition of an if statement is false?”
The correct answer is simple: Java skips the statements inside the if block and continues execution from the statement immediately after that block.
Quick Revision
| Concept | Key Point |
|---|---|
| if statement | Used to execute code conditionally. |
| Condition | Must produce true or false. |
| true | The if block executes. |
| false | The if block is skipped. |
| == | Compares two values. |
| = | Assigns a value. |
The if statement is the foundation of decision-making in Java. Once you understand how Java evaluates a condition and chooses whether to execute a block, the next step is to handle the other possibility as well—which is exactly what the if-else statement is designed to do.
