Conditional Expression in Java

April 18, 2018 Oclemy Java Control Statements, Java Operators 1 minute, 9 seconds

A conditional expression evaluates an expression based on a given condition.

They are used normally to assign a value to a variable that is restricted by a certain condition.

For example if age is greater than 17, then adult otherwise child.

if(age > 17)
{
    person="Adult";
}else{
    person="Child";
}

You can shorten that using a conditional expression:

person = (age > 17) ? "Adult" : "Child";

How conditional Expressions work

Conditional Expressions simplify one condition if-else statements. They allow you write short and concise code.

They are of the following syntax:

boolean-expression ? expression1 : expression2;

In the above, the result will be expression1 if the boolean-expression evaluates to true, otherwise the result becomes expression2.

In Conditional Expressions, the symbols ? and : have to appear together. They are called Conditional Operator.

Conditional Operators are also called Ternary Operator. This is because they use three operands.

Example

Let's write a simple example determine if items are sorted or not.

import java.util.Scanner;

public class MrConditionalExp {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter Ages: ");
        int age1 = input.nextInt();
        int age2 = input.nextInt();
        int age3 = input.nextInt();
        System.out.println((age1 < age2 && age2 < age3) ? "Ages are Sorted(ASC)" : "Ages are not Sorted");

    }
}

Result 1

Enter Ages:
24
46
55
Ages are Sorted

Result 2 Note we are only considering ascending.

Enter Ages:
65
54
23
Ages are not Sorted

Result 3

Enter Ages:
52
56
51
Ages are not Sorted

Best Regards.

Comments