- What is the absolute value of -9?
- +9

- What is the absolute value of +9?
- +9

An `if`

statement can be used to
compute absolute value:

if ( value < 0 ) abs = -value; else abs = value;

This is awkward for such a simple idea. The following does the same thing in one statement:

abs = (value < 0 )?-value:value ;

This statement uses a **conditional operator**.
The right side of the = is a conditional expression.
The expression is evalutated to produce a value,
which is then assigned to the variable, `abs`

.

true-or-false-condition?value-if-true:value-if-false

It works like this:

- The conditional expression evaluates to a single value.
- That value will be one of two choices:
- If the
*true-or-false-condition*is*true*, then use the expression between**?**and**:** - If the
*true-or-false-condition*is*false*, then use the expression between**:**and the end .

- If the

Here is how it works with the above example:

double value = -34.569; double abs; abs = (value < 0 )?-value:value ; ------------- ------ 1. condition 2. this is evaluated, is true to +34.569 ---- 3. The +34.569 is assigned to abs

The conditional expression is a type of *expression*--that is, it asks for
a value to be computed but does not by itself change any variable.
In the above example, the variable `value`

is not changed.