# Use AND and OR Operators in Java If Statements

> Combine boolean expressions in Java if statements using && (logical AND) when all conditions must be true and || (logical OR) when at least one must be true

**URL:** https://sentry.io/answers/how-do-i-use-and-in-if-statements-in-java/

---

## The Problem

I don't know how to use `&&` (AND) and `||` (OR) operators in `if` statements in Java.

## The Solution

In Java, we can use the logical AND (`&&`) and logical OR (`||`) operators to combine multiple boolean expressions in `if` statements and evaluate multiple conditions at once.

This answer demonstrates how to:

- Use `&&` to evaluate whether all conditions are true.
- Use `||` to evaluate whether at least one condition is true.
- Combine `&&` and `||` to evaluate more complex logical conditions.

### Using `&&` (Logical AND)

The `&&` operator is used to execute code only when all the conditions for an entire expression are true.

```java
public class Main {
    public static void main(String[] args) {
        int age = 25;
        boolean hasDrivingLicense = true;

        if (age > 18 && hasDrivingLicense) {
            System.out.println("You are eligible to drive.");
        }
    }
}
```

In this example, the following message is only printed if **both** `age > 18` and `hasDrivingLicense` are true:

```
 You are eligible to drive.
```

### Using `||` (Logical OR)

The `||` operator is used to execute code when at least one of the conditions is true for the entire expression.

```java
public class Main {
    public static void main(String[] args) {
        boolean isWeekend = true;
        boolean isHoliday = false;

        if (isWeekend || isHoliday) {
            System.out.println("You can relax today.");
        }
    }
}
```

In this example, the following message is printed if **either** `isWeekend` or `isHoliday` is true.

```
You can relax today.
```

### Combining `&&` and `||`

You can also combine the `&&` and `||` operators in a single `if` statement to create more complex logical expressions.

```java
public class Main {
    public static void main(String[] args) {
        int age = 17;
        boolean hasParentalConsent = true;

        if (age >= 18 || (age >= 16 && hasParentalConsent)) {
            System.out.println("You are allowed to participate.");
        }
    }
}
```

In this example, the following message is printed if `age >= 18` is true or if both `age >= 16` and `hasParentalConsent` are true.

```
You are allowed to participate.
```

### Summary

- The `&&` operator is used when all conditions need to be true.
- The `||` operator is used when at least one condition needs to be true.
- The `&&` and `||` operators are combined to create more complex logical conditions.

| Condition 1 | Condition 2 | `&&` (AND) Result | `||` (OR) Result |
|-------------|-------------|--------------------|-------------------|
| true        | true        | true               | true              |
| true        | false       | false              | true              |
| false       | true        | false              | true              |
| false       | false       | false              | false             |

In the truth table above:

- The `&&` operator returns `true` only if both conditions are `true`.
- The `||` operator returns `true` if at least one condition is `true`.

---

*Source: [sentry.io/answers/how-do-i-use-and-in-if-statements-in-java/](https://sentry.io/answers/how-do-i-use-and-in-if-statements-in-java/)*
