if (a > b) {
max = a;
}
else {
max = b;
}
Setting a single variable to one of two states based on a single condition is 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;
is 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.