Presentation is loading. Please wait.

Presentation is loading. Please wait.

Java I--Copyright © 2000-2007 Tom Hunter. Chapter 4 Control Structures: Part I.

Similar presentations


Presentation on theme: "Java I--Copyright © 2000-2007 Tom Hunter. Chapter 4 Control Structures: Part I."— Presentation transcript:

1 Java I--Copyright © 2000-2007 Tom Hunter

2 Chapter 4 Control Structures: Part I

3 Java I--Copyright © 2000-2007 Tom Hunter “ There is No goto in Java ” Structured programming: the building blocks There are 3 different kinds of operations in a program: perform a sequence of actions, perform a selection between alternative actions, or perform a repetition or iteration of the same action. Sequence, Selection, Iteration Structured Programming

4 Java I--Copyright © 2000-2007 Tom Hunter Sequence: one thing after another Structured Programming task1 task2 task3

5 Java I--Copyright © 2000-2007 Tom Hunter Selection: making choices Structured Programming taskA taskB ? YES NO Structured programming, only one entrance, only one exit.

6 Java I--Copyright © 2000-2007 Tom Hunter Repetition, Part I: doing the same thing again until there’s a reason to stop. Structured Programming taskA TRUE FALSE Do while: maybe won’t ever do taskA even once. “A while loop repeats as long as a condition is true.” expression ?

7 Java I--Copyright © 2000-2007 Tom Hunter Repetition, Part II: doing the same thing again until there’s a reason to stop. Structured Programming taskA ? TRUE FALSE Do until: will always do taskA at least once. “ A Do Until loop repeats as long as a condition is false.”

8 Java I--Copyright © 2000-2007 Tom Hunter Structured Programming Procedural Structured Programming Begin at the top, move to the bottom. Each program unit has only one entrance and only one exit.

9 Java I--Copyright © 2000-2007 Tom Hunter Selection in Java Object Oriented Programming Within a method, procedural code. Simple ‘ if ’ with or without brackets. if( expression ) statement; if( expression ) { statement; }

10 Java I--Copyright © 2000-2007 Tom Hunter Object Oriented Programming Simple ‘ if ’ with or without brackets. if( expression ) statement; if( expression ) { statement; } Within brackets, a “block.” Selection in Java

11 Java I--Copyright © 2000-2007 Tom Hunter Object Oriented Programming Simple ‘ if ’ / ‘ else ’ without brackets. if( expression ) statement; else statement; Without brackets, limit of only one statement per branch. Selection in Java

12 Java I--Copyright © 2000-2007 Tom Hunter w Object Oriented Programming Simple ‘ if ’ / ‘ else ’ with brackets. if( expression ) { statement; } else { statement; } Selection in Java

13 Java I--Copyright © 2000-2007 Tom Hunter Compound ‘if’ / ‘else if’ / ‘else if’ / ‘else’. if( expression ) { statement; } else if( expression ) { statement; } else { statement; } Selection in Java

14 Java I--Copyright © 2000-2007 Tom Hunter Special “Ternary” ? : Operator—shorthand ‘if’ / ‘else’ 1.) expression must evaluate to True or False. 2.) If expression is True, execute the command before the colon. 3.) If expression is False, execute the command after the colon. Do this if expression is True Do this if expression is False Selection in Java System.out.print ( expression ? “True” : “False” )

15 Java I--Copyright © 2000-2007 Tom Hunter while —“the Do While” The Test is First Repetition: while Part I while( expression ) statement;

16 Java I--Copyright © 2000-2007 Tom Hunter while —“the Do While” The Test is First Repetition: while Part I while( expression ) { statement; } The while { “Do While” } is used when you can’t predict exactly how many times your loop will be executed. The while may not be executed even once. It executes the loop while the expression is still true. w

17 Java I--Copyright © 2000-2007 Tom Hunter // DoUntil.java // Even though "c" begins the loop false, // it still executes at least once. public class DoUntil { public static void main( String args[] ) { boolean c = false; do { System.out.println( ”Execute DoUntil at least once " ); } while( c ); System.exit( 0 ); }

18 Java I--Copyright © 2000-2007 Tom Hunter while —“the Do Until” The Test is Last Repetition: while Part II do { statement; } while( expression ) ; w This do/while {“Do Until”} is also used when you can’t predict exactly how many times your loop will be executed. It executes at least once. It executes Until the expression becomes false.

19 Java I--Copyright © 2000-2007 Tom Hunter // WhileTest.java // Since "c" is already false when it reaches the // test, the loop never executes. public class DoWhile { public static void main( String args[] ) { boolean c = false while( c ) { System.out.println( ”Execute DoWhile while c is true" ); } System.exit( 0 ); }

20 Java I--Copyright © 2000-2007 Tom Hunter // SelectionTest.java import javax.swing.*; public class SelectionTest { public static void main( String args[] ) { int b, s; String big, small, out; big = JOptionPane.showInputDialog( "Big Number" ); small = JOptionPane.showInputDialog( "Small Number" ); b = Integer.parseInt( big ); s = Integer.parseInt( small ); out = ( b > s ? "Big was larger" : "Small was larger" ); JOptionPane.showMessageDialog( null, out, "Results", JOptionPane.INFORMATION_MESSAGE); System.exit( 0 ); } Test Ternary Operator

21 Java I--Copyright © 2000-2007 Tom Hunter // DoWhileTest.java import javax.swing.*; public class DoWhileTest { public static void main( String args[] ) { int b = 2, s = 1; String big, small, out = “Big is still Bigger”; while( b > s ) { JOptionPane.showMessageDialog( null, out, "Results", JOptionPane.INFORMATION_MESSAGE); big = JOptionPane.showInputDialog( "Big Number" ); small = JOptionPane.showInputDialog( "Small Number" ); b = Integer.parseInt( big ); s = Integer.parseInt( small ); } System.exit( 0 ); } Test DoWhile

22 Java I--Copyright © 2000-2007 Tom Hunter // DoUntilTest.java import javax.swing.*; public class DoUntilTest { public static void main( String args[] ) { int b = 2, s = 1; // preload variables. String big, small, out = “Big is still Bigger”; do { JOptionPane.showMessageDialog( null, out, "Results", JOptionPane.INFORMATION_MESSAGE); big = JOptionPane.showInputDialog( "Big Number" ); small = JOptionPane.showInputDialog( "Small Number" ); b = Integer.parseInt( big ); s = Integer.parseInt( small ); } while( b > s ) ; System.exit( 0 ); } Test DoUntil

23 Java I--Copyright © 2000-2007 Tom Hunter Repetition: while Loops The majority of applications use the plain while loop. Choose either while loop when you can’t know in advance how many times the loop will be executed. The loop is repeated until it encounters a sentinel value, that announces that the loop has finished.

24 Java I--Copyright © 2000-2007 Tom Hunter Assignment Operators We are already familiar with this statement: int x; x = 15; This means the value 15 is placed into the variable x. We say, “ 15 is assigned to x.” In Java, a single equals sign is the assignment operator.

25 Java I--Copyright © 2000-2007 Tom Hunter Assignment Operators Another common bit of code is this: int x; Declares x as an int. x = 15; After this assignment, x contains 15. x = x + 5; After this assignment, x contains 20. First the addition on the right is done. Then, the result is assigned to the the variable on the left.

26 Java I--Copyright © 2000-2007 Tom Hunter Assignment Operators Java offers a shortcut to the statement below: int x = 15; x = x + 5; After this assignment, x contains 20. x += 5; After this assignment, x contains 20. +=

27 Java I--Copyright © 2000-2007 Tom Hunter Assignment Operators Java offers a shortcut to the statement below: int x = 15; x = x - 5; After this assignment, x contains 10. x -= 5; After this assignment, x contains 10. -=

28 Java I--Copyright © 2000-2007 Tom Hunter Assignment Operators Java offers a shortcut to the statement below: int x = 15; x = x * 5; After this assignment, x contains 75. x *= 5; After this assignment, x contains 75. *=

29 Java I--Copyright © 2000-2007 Tom Hunter Assignment Operators Java offers a shortcut to the statement below: int x = 15; x = x / 5; After this assignment, x contains 3. x /= 5; After this assignment, x contains 3. /=

30 Java I--Copyright © 2000-2007 Tom Hunter Assignment Operators Java offers a shortcut to the statement below: int x = 15; x = x % 5; After this assignment, x contains 0. x % = 5; After this assignment, x contains 0. %=

31 Java I--Copyright © 2000-2007 Tom Hunter Increment/Decrement Operators There is one addition statement in Java that is so common, it gets its own operator. It means, simply, “Add one to the variable.” x++x--

32 Java I--Copyright © 2000-2007 Tom Hunter Increment/Decrement Operators Java offers a shortcut to the statement below: int x = 2; x = x + 1; After this assignment, x contains 3. x++; After this assignment, x contains 3. x++

33 Java I--Copyright © 2000-2007 Tom Hunter Increment/Decrement Operators Java offers a shortcut to the statement below: int x = 2; x = x - 1; After this assignment, x contains 1. x--; After this assignment, x contains 1. x--

34 Java I--Copyright © 2000-2007 Tom Hunter Increment/Decrement Operators You can do a pre-increment, or a post-increment. PrePost ++x;x++; --x;x--; If each of these statements is on a line by itself, there is no difference in the effect of doing a pre- or post- increment.

35 Java I--Copyright © 2000-2007 Tom Hunter Increment/Decrement Operators If each of these statements is on a line by itself, there is no difference in the effect of doing a pre- or post- increment. However, if the variable—which is having the pre- or post-increment applied to it—is used within another statement, your choice of pre- or post-increment can alter your results.

36 Java I--Copyright © 2000-2007 Tom Hunter // PrePostIncrement.java public class PrePostIncrement { public static void main( String args[] ) { int x=0; System.out.println( " Baseline, x = " + x ); System.out.println( "\n Pre-increment = ++x = " + ++x ); System.out.println( "\n After increment, x = " + x ); x = 0; System.out.println( "\n 2nd Baseline, x = " + x ); System.out.println( "\n Post-increment = x++ = " + x++ ); System.out.println( "\n After increment, x = " + x ); System.exit( 0 ); } Baseline, x = 0 Pre-increment = ++x = 1 After increment, x = 1 2nd Baseline, x = 0 Post-increment = x++ = 0 After increment, x = 1 w


Download ppt "Java I--Copyright © 2000-2007 Tom Hunter. Chapter 4 Control Structures: Part I."

Similar presentations


Ads by Google