Control Structures Oop
Control Structures Oop
Lecture Outline
❖ Decision Statements
❖ Loops
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
Program Flow 3
3
statement
statement
statement
statement
statement statement
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
4
4
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
5
5
Decision Statements
❖ A decision statement allows the code to execute a statement or
block of statements conditionally.
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
6
6
if Statement
if (expression) {
statement;
}
rest_of_program;
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
7
7
yes
if (expression) {
statement1; execute
statement1
}
rest_of_program
execute
rest_of_program
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
8
8
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
10 10
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
11
switch Statements
❖ The switch statement enables you to test several cases generated by a given expression.
❖ For example:
switch (expression) {
case value1:
statement1;
case value2:
statement2;
default:
default_statement;
}
Every statement after the true case is executed.
❖ The expression must evaluate to a char, byte, short or int, but not long, float,
or double.
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT
Thursday, June 3, 2021
12 12
switch Statements …
expression y
equals Do value1 thing
switch (expression){ value1?
case value1:
// Do value1 thing n
... n
default:
Do default action
// Do default action
} Continue the
// Continue the program program
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
13 13
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
14 14
break in switch …
expression y break
Do value1 thing
equals
switch (expression){ value1?
case value1:
n
// Do value1 thing
break;
case value2: expression y
equals Do value2 thing
// Do value2 thing value2?
break
break;
...
n
default:
// Do default action do default action
break;
}
break Continue the
// Continue the program program
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
15 15
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
16 16
if-else . . .
❖ This is how it is accomplished with a switch:
switch (grade) {
case 'A':
System.out.println("You got an A.");
break;
case 'B':
System.out.println("You got a B.");
break;
case 'C':
System.out.println("You got a C.");
break;
default:
System.out.println("You got an F.");
}
❖ if-else chains can sometimes be rewritten as a “switch” statement.
❖ switches are usually simpler and faster.
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
17 17
Loops
❖ A loop allows you to execute a statement or block of statements
repeatedly.
2. for loops
3. do-while loops
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
18 18
❖ The expression is tested at the beginning of the loop, so if it is initially false, the
loop will not be executed at all.
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
19 19
The control of the for loop appear in parentheses and is made up of three parts:
1. The first part, the init_expression, sets the initial conditions for the loop and is executed
before the loop starts.
2. Loop executes so long as the loop condition is true and exits otherwise.
3. The third part of the control information, the increment_expr, is usually used to
increment the loop counter. This is executed at the end of each loop iteration.
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
20 20
❖ You do not have to fill all three control expressions but you must still have two
semicolons.
int n = 0;
for(; n <= 100;) {
System.out.println(++n);
}
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
22 22
Execute loop
y statement(s)
Execute loop
statement(?) Increment
count
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
23 23
❖ You can also use the break statement to exit the loop entirely.
// prints out numbers unless
// num is ever exactly 400
while (num > 6) {
if(num == 400) {
break;
}
System.out.println(num);
num -= 8;
}
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
25 25
Nested Loops
❖You can nest loops of any kind one inside another to any
Pop Quiz
1. In the switch statement, which types can expression evaluate to?
char, byte, short, int
2. What must be used to separate each section of a for statement? semicolons
5. Write a for loop that outputs all numbers that are divisible by 3
between 0-50.
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021
27 27
Questions???
2. Control Structures, Object Oriented Programming, Electrical and Computer Engineering, DMiT Thursday, June 3, 2021