Sams Teach Yourself Java 2 in 24 Hours
- Table of Contents
- Copyright
- About the Author
- About the Technical Editor
- Acknowledgments
- We Want to Hear from You!
- Reader Services
- Introduction
- Hour 1. Becoming a Programmer
- Hour 2. Writing Your First Program
- Hour 3. Vacationing in Java
- Hour 4. Understanding How Java Programs Work
- Part II: Learning the Basics of Programming
- Hour 5. Storing and Changing Information in a Program
- Hour 6. Using Strings to Communicate
- Hour 7. Using Conditional Tests to Make Decisions
- Hour 8. Repeating an Action with Loops
- Part III: Working with Information in New Ways
- Hour 9. Storing Information with Arrays
- Hour 10. Creating Your First Object
- Hour 11. Describing What Your Object Is Like
- Hour 12. Making the Most of Existing Objects
- Part IV: Programming a Graphical User Interface
- Hour 13. Building a Simple User Interface
- Hour 14. Laying Out a User Interface
- Hour 15. Responding to User Input
- Hour 16. Building a Complex User Interface
- Part V: Creating Multimedia Programs
- Hour 17. Creating Interactive Web Programs
- Hour 18. Handling Errors in a Program
- Hour 19. Creating a Threaded Program
- Hour 20. Reading and Writing Files
- Part VI: Creating Multimedia Programs
- Hour 21. Using Fonts and Color
- Hour 22. Playing Sound Files
- Hour 23. Working with Graphics
- Hour 24. Creating Animation
- Part VII: Appendixes
- Appendix A. Tackling New Features of Java 2 Version 1.4
- Appendix B. Using the Java 2 Software Development Kit
- Appendix C. Programming with the Java 2 Software Development Kit
- Appendix D. Using Sun ONE Studio
- Appendix E. Where to Go from Here: Java Resources
- Appendix F. This Book's Web Site
The Conditional Operator
The most complicated conditional statement is one that you might not find reasons to use in your programs: the ternary operator. If you find it too confusing to implement in your own programs, take heart—you can use other conditionals to accomplish the same thing.
You can use the ternary operator when you want to assign a value or display a value based on a conditional test. For example, in a video game, you might need to set the numberOfEnemies variable based on whether the skillLevel variable is greater than 5. One way to do this is with an if-else statement:
if (skillLevel > 5)
numberOfEnemies = 10;
else
numberOfEnemies = 5;
A shorter way to do this is to use the ternary operator, which is ?. A ternary operator 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 the value of numberOfEnemies based on skillLevel, you could use the following statement:
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. You could do this action with another if-else statement:
if (gender.equals("male"))
System.out.print("Mr.");
else
System.out.print("Ms.");
A shorter method is to use the ternary operator to accomplish the same thing, as in the following:
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 won't encounter any situations where the ternary operator must be used instead of if and else statements.
Workshop: Watching the Clock | Next Section