cs0007: introduction to computer programming the switch statement, decimalformat, and introduction...

Click here to load reader

Upload: mavis-bell

Post on 23-Dec-2015

230 views

Category:

Documents


0 download

TRANSCRIPT

  • Slide 1
  • CS0007: Introduction to Computer Programming The switch Statement, DecimalFormat, and Introduction to Looping
  • Slide 2
  • Review You can test a series of condition with the if-else if statement Nesting is enclosing one structure inside of another. Binary logical operators combine two boolean expressions into one. Binary logical operators: && || Unary logical operator: !
  • Slide 3
  • Review What does the == operator compare when the operands are strings? Their references What should you use instead of logical operators when comparing strings? equals compareTo A variable has block-level scope if It is declared inside of a block A variable that is declared inside of a block has scope beginning at Its declaration A variable that is declared inside of a block has scope ending at The end of the block in which it was declared
  • Slide 4
  • The switch Statement It is often the case that you want the value of a single variable decide which branch a program should take: if (x == 1) statement or block 1 if else (x == 2) statement or block 2 if else (x == 3) statement or block 3 else statement or block 4 This is tedious and not very aesthetically pleasing. Java provides a structure that lets the value of a variable or expression decide which branch to take This structure is called a switch statement.
  • Slide 5
  • The switch Statement General form of a switch statement: switch (SwitchExpression) { case CaseExpression1: //One or more statements break; case CaseExpression2: //One or more statements break; default: //One or more statements } switch keyword that begins a switch statement SwitchExpression a variable or expression that has to be either char, byte, short, or int. case keyword that begins a case statement (there can be any number of case statements) CaseExpression1 a literal or final variable that is of the same type as SwitchExpression.
  • Slide 6
  • The switch Statement General form of a switch statement: switch (SwitchExpression) { case CaseExpression1: //One or more statements break; case CaseExpression2: //One or more statements break; default: //One or more statements } Inside a case statement, one or more valid programming statements may appear. After the statement(s) inside of a case statements block, often the keyword break appears. After all of the case statements, there is the default case, which begins with the keyword default.
  • Slide 7
  • The switch Statement General form of a switch statement: switch (SwitchExpression) { case CaseExpression1: //One or more statements break; case CaseExpression2: //One or more statements break; default: //One or more statements } What this does is compare the value of SwitchExpression to each CaseExpression s. If they are equal, the statements after the matching case statement are executed. Once the break keyword is reached, the statements after the switch statements block are executed. break is a keyword that breaks the control of the program out of the current block. If none of the CaseExpression s are equal to SwitchExpression, then the statements below the default case are executed.
  • Slide 8
  • The switch Statement if (x == 1) y = 4; if else (x == 2) y = 9; else y = 22; Is the same as switch (x) { case 1: y = 4; break; case 2: y = 9; break; default: y = 22; }
  • Slide 9
  • switch Statement Example New Topics: The switch Statement
  • Slide 10
  • The switch Statement Notes The CaseExpression of each case statement must be unique. The default section is optional. Again, the SwitchExpression and all of the CaseExpression s must be either char, byte, short, or int. Without the break; at the end of the statements associated with a case statement, the program falls through to the next case statements statements, and executes them. If this is what you actually want, then leave out the break;, but often it isnt. Why doesnt default statement have a break; at the end?
  • Slide 11
  • The DecimalFormat Class Java has a default way of displaying floating-point numbers, but it is often the case you want to display them in a particular format The Java API provides a class to do this called DecimalFormat. You create a DecimalFormat object much like how you created a Scanner object. DecimalFormat identifier = new DecimalFormat(formattingPattern); Also like when you create Scanner object, you must include an import statement before the class header: import java.text.DecimalFormat;
  • Slide 12
  • The DecimalFormat Class formattingPattern is an argument passed to the DecimalFormat constructor that tells it what format to display the floating-point numbers. Each character in the corresponds with a position in the number # - specifies that a digit should be displayed if present 0 - specifies that a digit should be displayed if present, but if not 0 should be displayed % - placed at the end to multiply the number by 100 and place the % character at the end. To apply the format to a number, you must use the format method of the DecimalFormat object. decimalformatIdentifier.format(floatingPointNumber)
  • Slide 13
  • DecimalFormat Example New Topics: DecimalFormat class
  • Slide 14
  • The printf method Another way to format output is with the printf method from the out object in the System class. System.out.printf(FormatString, ArgumentList); This is a formatting method taken from old C formatting It is very powerful, and somewhat easy to use. The book goes over some examples of how it can be used. Also there are many, many examples of how to use this online.
  • Slide 15
  • Loops So far we have used decision structures to determine which statements are executed and which are not depending on a condition. We used this for: Validation General control flow More specifically, weve used decision structures to execute statements that follow the condition one or zero times. What if we want the user to keep trying to put in valid input until she succeeds? How would we do this with decision structures? Can we? Answer: No Solution: Loops A loop is a control structure that causes a statement or group of statements to repeat. We will discuss three (possibly four) looping control structures. They differ in how they control the repitition.
  • Slide 16
  • The while Loop The first looping control structure we will discuss is the while loop. General Form: while (BooleanExpression) Statement or Block First, the BooleanExpression is tested If it is true, the Statement or Block is executed After the Statement or Block is done executing, the BooleanExpression is tested again If it is still true, the Statement or Block is executed again oThis continues until the test of the BooleanExpression results in false. Note: the programming style rules that apply to decision statements also apply.
  • Slide 17
  • The while Loop Flowchart Boolean Expression Statement or Block True False
  • Slide 18
  • while Loop Example New Topics: while Loop Here, number is called a loop control variable. A loop control variable determines how many times a loop repeats. Each repetition of a loop is called an iteration. The a while loop is known as a pretest loop, because it tests the boolean expression before it executes the statements in its body. Note: This implies that if the boolean expression is not initially true, the body is never executed. number