The most complicated conditional statement in Java is the ternary operator ?
.
You can use the ternary operator when you want to assign a value or display a value based on a condition. For example, consider a video game that sets the numberOfEnemies
variable based on whether the skillLevel
variable is greater than 5. One way you can do this is an if
-else
statement:
if (skillLevel > 5) {
numberOfEnemies = 10;
} else {
numberOfEnemies = 5;
}
A shorter way to do this is to use the ternary operator. A ternary expression has five parts:
• The condition to test, surrounded by parentheses, as in (skillLevel > 5)
• A question mark (?)
• The value to use if the condition is true
• A colon (:)
• The value to use if the condition is false
To use the ternary operator to set numberOfEnemies
based on skillLevel
, you could use the following statement:
int numberOfEnemies = (skillLevel > 5) ? 10 : 5;
You also can use the ternary operator to determine what information to display. Consider the example of a program that displays the text “Mr.” or “Ms.” depending on the value of the gender
variable. Here’s a statement that accomplishes this:
System.out.print( (gender.equals("male")) ? "Mr." : "Ms." );
The ternary operator can be useful, but it’s also the hardest conditional in Java to understand. As you learn Java, you don’t encounter any situations where the ternary operator must be used instead of if
-else
statements.
18.221.188.161