Download presentation
Presentation is loading. Please wait.
Published byPhebe Smith Modified over 9 years ago
1
Java Programming: From Problem Analysis to Program Design, 4e Chapter 4 Control Structures I: Selection
2
2Java Programming: From Problem Analysis to Program Design, 4e Chapter Objectives Learn about control structures Examine relational and logical operators Explore how to form and evaluate logical (Boolean) expressions Learn how to use the selection control structures if, if … else, and switch in a program
3
3Java Programming: From Problem Analysis to Program Design, 4e Control Structures Three methods of processing a program –In sequence –Branching –Looping Branch: altering the flow of program execution by making a selection or choice Loop: altering the flow of program execution by repetition of statement(s)
4
4Java Programming: From Problem Analysis to Program Design, 4e Flow of Execution
5
5Java Programming: From Problem Analysis to Program Design, 4e Relational Operators Relational operator –Allows you to make comparisons in a program –Binary operator Condition is represented by a logical expression in Java Logical expression: expression that has a value of either true or false
6
6Java Programming: From Problem Analysis to Program Design, 4e Relational Operators in Java
7
7Java Programming: From Problem Analysis to Program Design, 4e Relational Operators and Primitive Data Types Can be used with integral and floating-point data types Can be used with the char data type Unicode collating sequence
8
8Java Programming: From Problem Analysis to Program Design, 4e
9
9
10
10Java Programming: From Problem Analysis to Program Design, 4e Relational Operators and the Unicode Collating Sequence
11
11Java Programming: From Problem Analysis to Program Design, 4e Logical (Boolean) Operators
12
12Java Programming: From Problem Analysis to Program Design, 4e Logical (Boolean) Operators (continued)
13
13Java Programming: From Problem Analysis to Program Design, 4e Logical (Boolean) Operators (continued)
14
14Java Programming: From Problem Analysis to Program Design, 4e Logical (Boolean) Operators (continued)
15
15Java Programming: From Problem Analysis to Program Design, 4e Precedence of Operators
16
16Java Programming: From Problem Analysis to Program Design, 4e Precedence of Operators (continued)
17
17Java Programming: From Problem Analysis to Program Design, 4e Short-Circuit Evaluation Definition: a process in which the computer evaluates a logical expression from left to right and stops as soon as the value of the expression is known
18
18Java Programming: From Problem Analysis to Program Design, 4e Selection One-way selection Two-way selection Compound (block of) statements Multiple selections (nested if) Conditional operator switch structures
19
19Java Programming: From Problem Analysis to Program Design, 4e One-Way Selection Syntax if (expression) statement Expression referred to as decision maker Statement referred to as action statement
20
One-Way Selection (continued) Java Programming: From Problem Analysis to Program Design, 4e20
21
21Java Programming: From Problem Analysis to Program Design, 4e Example 4-10 //Program to determine the absolute value of an integer import javax.swing.JOptionPane; public class AbsoluteValue { public static void main(String[] args) { int number; int temp; String numString; numString = JOptionPane.showInputDialog ("Enter an integer:"); //Line 1 number = Integer.parseInt(numString); //Line 2 temp = number; //Line 3 One-Way Selection (continued)
22
22Java Programming: From Problem Analysis to Program Design, 4e if (number < 0) //Line 4 number = -number; //Line 5 JOptionPane.showMessageDialog(null, "The absolute value of " + temp + " is " + number, "Absolute Value", JOptionPane.INFORMATION_MESSAGE); //Line 6 System.exit(0); } One-Way Selection (continued)
23
23Java Programming: From Problem Analysis to Program Design, 4e Two-Way Selection Syntax if (expression) statement1 else statement2 else statement must be paired with an if
24
24Java Programming: From Problem Analysis to Program Design, 4e Two-Way Selection (continued)
25
25Java Programming: From Problem Analysis to Program Design, 4e Two-Way Selection (continued) Example 4-14 if (hours > 40.0) wages = 40.0 * rate + 1.5 * rate * (hours - 40.0); else wages = hours * rate;
26
26Java Programming: From Problem Analysis to Program Design, 4e Example 4-14 (continued) if (hours > 40.0); //Line 1 wages = 40.0 * rate + 1.5 * rate * (hours - 40.0); //Line 2 else //Line 3 wages = hours * rate; //Line 4 Because a semicolon follows the closing parenthesis of the if statement (Line 1), the else statement stands alone The semicolon at the end of the if statement (see Line 1) ends the if statement, so the statement at Line 2 separates the else clause from the if statement; that is, else is by itself Since there is no separate else statement in Java, this code generates a syntax error Two-Way Selection (continued)
27
27Java Programming: From Problem Analysis to Program Design, 4e Compound (Block of) Statements Syntax
28
28Java Programming: From Problem Analysis to Program Design, 4e Compound (Block of) Statements (continued) if (age > 18) { System.out.println("Eligible to vote."); System.out.println("No longer a minor."); } else { System.out.println("Not eligible to vote."); System.out.println("Still a minor."); }
29
29Java Programming: From Problem Analysis to Program Design, 4e Multiple Selection: Nested if Syntax if (expression1) statement1 else if (expression2) statement2 else statement3 Else associated with most recent incomplete if Multiple if statements can be used in place of if…else statements May take longer to evaluate
30
30Java Programming: From Problem Analysis to Program Design, 4e Conditional (? :) Operator Ternary operator Syntax expression1 ? expression2 : expression3 If expression1 = true, then the result of the condition is expression 2; otherwise, the result of the condition is expression 3
31
31Java Programming: From Problem Analysis to Program Design, 4e switch Structures
32
32Java Programming: From Problem Analysis to Program Design, 4e switch Structures (continued) In Java, switch, case, break, and default are reserved words In a switch structure, the expression is evaluated first The value of the expression is then used to perform the actions specified in the statements that follow the reserved word case The expression is usually an identifier The value of the identifier or the expression can be only of type int, byte, short, or char
33
switch Structures (continued) Java Programming: From Problem Analysis to Program Design, 4e33 The expression is sometimes called the selector; its value determines which statements are selected for execution A particular case value must appear only once One or more statements may follow a case label, so you do not need to use braces to turn multiple statements into a single compound statement
34
switch Structures (continued) Java Programming: From Problem Analysis to Program Design, 4e34 The break statement may or may not appear after each statements1, statements2,..., statementsn A switch structure may or may not have the default label
35
35Java Programming: From Problem Analysis to Program Design, 4e switch Structures (continued)
36
36Java Programming: From Problem Analysis to Program Design, 4e switch Structures (continued)
37
37Java Programming: From Problem Analysis to Program Design, 4e Example 4-23 switch (grade) { case 'A': System.out.println("The grade is A."); break; case 'B': System.out.println("The grade is B."); break; case 'C': System.out.println("The grade is C."); break; switch Structures (continued)
38
38Java Programming: From Problem Analysis to Program Design, 4e case 'D': System.out.println("The grade is D."); break; case 'F': System.out.println("The grade is F."); break; default: System.out.println("The grade is invalid."); } switch Structures (continued)
39
39Java Programming: From Problem Analysis to Program Design, 4e Programming Example: Cable Company Billing Input: customer’s account number, customer code, number of premium channels to which customer subscribes, number of basic service connections (in case of business customers) Output: customer’s account number and the billing amount
40
40Java Programming: From Problem Analysis to Program Design, 4e Programming Example: Cable Company Billing (continued) Solution –Prompt user for information –Use switch statements based on customer’s type –Use an if statement nested within a switch statement to determine amount due by each customer
41
41Java Programming: From Problem Analysis to Program Design, 4e Comparing Strings class String –Method compareTo –Method equals Given string str1 and str2
42
42Java Programming: From Problem Analysis to Program Design, 4e Comparing Strings (continued) String str1 = "Hello"; String str2 = "Hi"; String str3 = "Air"; String str4 = "Bill"; String str5 = "Bigger";
43
43Java Programming: From Problem Analysis to Program Design, 4e Comparing Strings (continued)
44
44Java Programming: From Problem Analysis to Program Design, 4e Comparing Strings (continued)
45
45Java Programming: From Problem Analysis to Program Design, 4e Chapter Summary Control structures are used to process programs Logical expressions and order of precedence of operators are used in expressions If statements if … else statements switch structures Proper syntax for using control statements Compare strings
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.