59
3. Flow of Control Harald Gall, Michael Würsch Institut für Informatik Universität Zürich http://seal.ifi.uzh.ch/info1

3. Flow of Control - UZH

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 3. Flow of Control - UZH

3. Flow of Control

Harald Gall, Michael Würsch Institut für Informatik Universität Zürich http://seal.ifi.uzh.ch/info1

Page 2: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Flow of Control

n  Flow of control is the order in which a program performs actions. n  Up to this point, the order has been

sequential. n  A branching statement chooses between two or

more possible actions. n  A loop statement repeats an action until a

stopping condition occurs.

2

Page 3: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Visualizing the Flow of Control

3

Page 4: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Example: Euclid’s Algorithm

4

Page 5: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Outline

n  The Type boolean and boolean Expressions

n  The if-else Statement n  The switch statement

5

Page 6: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The Type boolean

6

n  True or False n  Example:

n  “The order can only be

completed if the customer is already registered and has entered a valid credit card number.”

n  Orderok = Accountexists AND CreditCardvalid

Page 7: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The Type boolean

n  The type boolean is a primitive type with only two values: true and false.

n  Boolean variables can make programs more readable. if (systemsAreOK) instead of if((temperature <= 100) && (thrust >= 12000) && (cabinPressure > 30) && …)

7

Page 8: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Naming Boolean Variables

n  Choose names such as isPositive or systemsAreOk.

n  Avoid names such as numberSign or systemStatus.

8

Page 9: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Boolean Expressions and Variables

n  Variables, constants, and expressions of type boolean all evaluate to either true or false.

n  A boolean variable can be given the value of a boolean expression by using an assignment operator. boolean isPositive = (number > 0); ... if (isPositive) ...

9

Page 10: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Boolean Expressions

n  The value of a boolean expression is either true or false.

n  Examples time < limit balance < 0

10

Page 11: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Java Comparison Operators

11

Page 12: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Using ==

n  == is appropriate for determining if two integers or characters have the same value. if (a == 3) where a is an integer type

n  == is not appropriate for determining if two floating points values are equal. Use < and some appropriate tolerance instead. if (abs(b - c) < epsilon) where b, c, and epsilon are floating point

types 12

Page 13: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Using ==, cont.

n  == is not appropriate for determining if two objects have the same value. n  if (s1 == s2), where s1 and s2 refer to

strings, determines only if s1 and s2 refer the a common memory location.

n  If s1 and s2 refer to strings with identical sequences of characters, but stored in different memory locations, (s1 == s2) is false.

13

Page 14: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Using ==

n  To test the equality of objects of class String, use method equals. s1.equals(s2) or s2.equals(s1)

n  To test for equality ignoring case, use method equalsIgnoreCase. ("Hello".equalsIgnoreCase("hello"))

14

Page 15: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

equals and equalsIgnoreCase

n  Syntax String.equals(Other_String) String.equalsIgnoreCase(Other_String)

15

Page 16: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Lexicographic Order

n  Lexicographic order is similar to alphabetical order, but is it based on the order of the characters in the ASCII (and Unicode) character set. n  All the digits come before all the letters. n  All the uppercase letters come before all the

lower case letters.

16

Page 17: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Lexicographic Order

n  Strings consisting of alphabetical characters can be compared using method compareTo and method toUpperCase or method toLowerCase. String s1 = "Hello"; String lowerS1 = s1.toLowerCase(); String s2 = "hello"; if (s1.compareTo(s2) == 0) System.out.println("Equal!");

17

Page 18: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Method compareTo

n  Syntax String_1.compareTo(String_2)

n  Method compareTo returns n  a negative number if String_1 precedes String_2

n  zero if the two strings are equal n  a positive number of String_2 precedes String_1.

18

Page 19: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Java Logical Operators

19

Page 20: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Boolean Expressions: AND

20

Page 21: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Compound Boolean Expressions

n  Boolean expressions can be combined using the "and" (&&) operator.

n  Example if ((score > 0) && (score <= 100)) ...

n  Not allowed if (0 < score <= 100) ...

21

Page 22: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Compound Boolean Expressions

n  Syntax (Sub_Expression_1) && (Sub_Expression_2)

n  Parentheses often are used to enhance readability.

n  The larger expression is true only when both of the smaller expressions are true.

22

Page 23: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Boolean Expressions: OR

23

Page 24: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Compound Boolean Expressions, cont. n  Boolean expressions can be combined using the

"or” || operator. n  Example

if ((quantity > 5) || (cost < 10)) ...

n  Syntax (Sub_Expression_1) || (Sub_Expression_2)

24

Page 25: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Compound Boolean Expressions, cont. ■  The larger expression is true

–  when either of the smaller expressions is true

–  when both of the smaller expressions are true.

■  The Java version of “or” is the inclusive or which allows either or both to be true.

■  The exclusive or allows one or the other, but not both to be true.

25

Page 26: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Short-circuit Evaluation

n  Sometimes only part of a boolean expression needs to be evaluated: short-circuit or lazy evaluation n  If the first operand associated with an ||

is true, the expression is true. n  If the first operand associated with an &&

is false, the expression is false.

26

Page 27: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Short-circuit Evaluation

n  Short-circuit evaluation is not only efficient, sometimes it is essential!

n  A run-time error can result, for example, from an attempt to divide by zero. if ((number != 0) && (sum/number > 5))

n  Complete evaluation can be achieved by substituting & for && or | for ||

27

Page 28: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Negating a Boolean Expression

n  A boolean expression can be negated using the "not” ! operator.

n  Syntax !(Boolean_Expression)

n  Example (a || b) && !(a && b) which is the exclusive OR (XOR)

28

Page 29: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Negating a Boolean Expression

n  Avoiding the Negation Operator

29

Page 30: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Boolean Operators

n  FIGURE 3.7 The Effect of the Boolean Operators && (and), || (or), and ! (not) on Boolean values

30

Page 31: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Precedence Rules

31

Page 32: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Precedence Rules

n  In what order are the operations performed? score < min/2 - 10 || score > 90

32

Page 33: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The if-else Statement ■  A branching statement that chooses between

two possible actions. if (Boolean_Expression) Statement_1

else Statement_2

33

Page 34: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The if-else Statement

34

Page 35: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The if-else Statement

35

Page 36: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Semantics of the if-else Statement

36

Page 37: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The if-else Statement, cont.

37

Page 38: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Omitting the else Part n  The Semantics of an if Statement without an else

38

Page 39: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Omitting the else Part

■  If the else part is omitted and the expression after the if is false, no action occurs.

■  syntax if (Boolean_Expression)

Statement

■  example if (weight > ideal)

caloriesPerDay -= 500;

39

Page 40: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Compound Statements

n  To include multiple statements in a branch, enclose the statements in braces. if (count < 3) { total = 0; count = 0; }

40

Page 41: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Compound Statements

n  A list of statements is enclosed in braces {}, they form a single compound statement.

n  Example if (total > 10) { sum = sum + total; total = 0; }

41

Page 42: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Nested if-else Statements

n  An if-else statement can contain any sort of statement within it.

n  It can contain another if-else statement: n  if-else may be nested within the "if" part. n  if-else may be nested within the "else"

part. n  if-else may be nested within both parts.

42

Page 43: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Nested Statements n  Syntax

if (Boolean_Expression_1) if (Boolean_Expression_2) Statement_1; else Statement_2; else if (Boolean_Expression_3) Statement_3; else Statement_4;

43

Page 44: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Nested Statements

n  Each else is paired with the nearest unmatched if.

n  If used properly, indentation communicates which if goes with which else.

n  Braces can be used like parentheses to group statements.

44

Page 45: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Nested Statements

n  Subtly different forms

First Form

if (a > b) { if (c > d) e = f } else g = h;

Second Form

if (a > b) if (c > d) e = f else g = h;

// oops

45

Page 46: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Multibranch if-else Statements

n  Syntax if (Boolean_Expression_1)

Statement_1

else if (Boolean_Expression_2)

Statement_2

else if (Boolean_Expression_3)

Statement_3

else if …

else

Default_Statement

46

Page 47: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Multibranch if-else Statements

47

Page 48: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Multibranch if-else Statements n  Sample program 3.3 class Grader

48

Page 49: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Multibranch if-else Statements n  Equivalent code

if (score >= 90)

grade = 'A';

else if (score >= 80)

grade = 'B';

else if (score >= 70)

grade = 'C';

else if (score >= 60)

grade = 'D';

else

grade = 'F';

49

Page 50: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The switch Statement

n  Syntax switch (Controlling_Expression){ case Case_Label: Statement(s); break; case Case_Label: … default: … }

50

Page 51: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The switch Statement

n  The switch statement is a multi-way branch based on an integral (integer or character) expression.

n  Each case consists of the keyword case followed by a constant (case label), a colon, and a list of statements.

n  The list is searched for a case label matching the controlling expression.

51

Page 52: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The switch Statement

n  If no match is found, the case labeled default is executed.

n  The default case is optional, but recommended.

n  Repeated case labels are not allowed.

52

Page 53: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The switch Statement

n  The action for each case typically ends with the word break.

n  The optional break statement prevents the consideration of other cases.

n  The controlling expression can be anything that evaluates to an integral type.

53

Page 54: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The switch Statement n  Program Listing 3.4 class MultipleBirths

54

Page 55: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Enumerations

n  Restrict contents of a variable to certain values: An enumeration lists the values a variable can have

n  An enumeration is a class n  Example

enum MovieRating {E, A, B} // they are not char! MovieRating rating; rating = MovieRating.A;

55

Page 56: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Enumerations

n  Possible to use in a switch statement

56

default case is not needed!

Page 57: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Enumerations

n  An even better choice of descriptive identifiers for the constants enum MovieRating {EXCELLENT, AVERAGE, BAD} rating = MovieRating.AVERAGE; … case EXCELLENT: … case AVERAGE: … case BAD: …

57

Page 58: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

The Conditional Operator if (n1 > n2)

max = n1;

else

max = n2;

can be written as max = (n1 > n2) ? n1 : n2;

n  The ? and : together are call the conditional operator or ternary operator. System.out.print("You worked " +

((hours > 1) ? "hours" ; "hour"));

58

Page 59: 3. Flow of Control - UZH

JAVA: An Introduction to Problem Solving & Programming, 5th Ed. By Walter Savitch and Frank Carrano. ISBN 0136130887 © 2008 Pearson Education, Inc., Upper Saddle River, NJ. All Rights Reserved

Summary

n  You have learned about Java branching statements.

n  You have learned about the type boolean.

59