An Operator in Java

The answer for ? : question in Java

Suddenly, I’ve missed Java programming and I just posted this.
The value of a variable often depends on whether a particular boolean expression “is” or “is not true” and on nothing else. For instance one common operation was setting the value of a variable to the maximum of two quantities.

In Java we might code as below

--
if (a > b) {
  max = a;
}
else {
  max = b;
}
--

And setting a single variable to one of two states based on a single condition, was such a common use of if-else that a shortcut has been devised for it, the conditional operator, ?:.
Using the conditional operator you can rewrite the above example in a single line like this:

--
max = (a > b) ? a : b;
--

(a > b) ? a : b; was an expression which returns one of two values, a or b.
The condition, (a > b), is tested. If it is true the first value, a, is returned. If it is false, the second value, b, is returned. Whichever value is returned is dependent on the conditional test, a > b. The condition can be any expression which returns a boolean value.

Thanks for reading.

Reference: Logic course

Advertisement