Repetition Statements (Loops)
Repetition Statements (Loops)
1
Loops – While, Do, For
• Repetition Statements
– While
– Do
– For
2
Repetition Statements
• Repetition statements allow us to execute a
statement or a block of statements multiple times
• Often they are referred to as loops
• Like conditional statements, they are controlled by
boolean expressions
• Java has three kinds of repetition statements:
while
do
for
• The programmer should choose the right kind of
loop statement for the situation
3
The while Statement
• A while statement has the following syntax:
while ( condition )
statement;
• If the condition is true, the statement is
executed
• Then the condition is evaluated again, and if it is
still true, the statement is executed again
• The statement is executed repeatedly until the
condition becomes false
4
Logic of a while Loop
condition
evaluated
true false
statement
5
The while Statement
• An example of a while statement:
int count = 0;
while (count < 2)
{
System.out.println("Welcome to Java!");
count++;
}
7
animation
8
animation
9
animation
10
animation
11
animation
12
animation
13
animation
14
animation
15
Example (Average.java)
16
Infinite Loops
• Executing the statements in the body of a while
loop must eventually make the condition false
• If not, it is called an infinite loop, which will
execute until the user interrupts the program
• This is a common logical error
• You should always double check the logic of a
program to ensure that your loops will terminate
17
Infinite Loops
• An example of an infinite loop:
int count = 1;
while (count <= 25)
{
System.out.println(count);
count = count - 1;
}
18
Nested Loops
• Similar to nested if statements, loops can
be nested as well
• That is, the body of a loop can contain
another loop
• For each iteration of the outer loop, the
inner loop iterates completely
19
Nested Loops
• How many times will the string "Here" be printed?
count1 = 1;
while (count1 <= 10)
{
count2 = 1;
while (count2 <= 20)
{
System.out.println ("Here");
count2++;
}
count1++;
}
10 * 20 = 200
20