Repetições
Estruturas de repetição, também conhecidas como loops ou iterações, são construções fundamentais que permitem que o código seja executado várias vezes.
O Java possui 3 intruções de repetição:
- for
- while
- do…while
Repetição for
A instrução for é uma estrutura de repetição que executa um número de iterações conhecidas.
Geralmente esse número de iterações é controlado por um contador que é inicializado no
início, incrementado em cada iteração e testado no inicio de cada iteração para verificar se
atingiu o numero de iterações pretendido.
Sintaxe:
for( inicialização do contador, condição de paragem, incremento do contador){
<bloco de código>
}
A inicialização só é executada uma vez, antes da 1ª iteração. Geralmente, é nesta fase que se
inicializa o contador.
A condição de paragem é executada no início de cada iteração. Geralmente, testa-se o valor
do contador contra um determinado valor e se a condição fôr true, faz mais uma iteração; se
fôr false, termina a repetição e executa a próxima instrução a seguir ao for.
O incremento é executado no final de cada iteração e serve para incrementar o contador.
Exemplo:
class ForDemo {
public static void main(String[] args){
for(int i=1; i<11; i++){
System.out.println("Count is: " + i);
}
}
}
No exemplo acima, a variável i é o contador do for. A repetição executa 10 iterações.
O ciclo for é bastante usado para percorrer os valores de arrays ou colecções como no
exemplo abaixo:
class ArrayForDemo {
public static void main(String[] args){
int[] numbers = {1,2,3,4,5,6,7,8,9,10};
for (int item : numbers) {
System.out.println("Count is: " + item);
}
}
}
Repetição while
O ciclo while, executa repetidamente um bloco de código enquanto uma determinada
condição fôr verdadeira (true).
Sintaxe:
while( condição){
<bloco de código>
}
Como a condição é avaliada no início de cada iteração, o ciclo while pode executar zero ou mais
iterações.
Exemplo:
class WhileDemo {
public static void main(String[] args){
int count = 1;
while (count < 11) {
System.out.println("Count is: " + count);
count++;
}
}
}
O exemplo a seguir implementa o ciclo infinito:
while (true){
// código do bloco while
}
Repetição do … while
O ciclo do … while, tal como o ciclo while, executa repetidamente um bloco de código
enquanto uma determinada condição fôr verdadeira (true).
Sintaxe:
do{
<bloco de código>
}while(condição);
Como a condição é avaliada no final de cada iteração, o ciclo do … while pode executar
uma ou mais iterações.
Exemplo:
class DoWhileDemo {
public static void main(String[] args){
int count = 1;
do {
System.out.println("Count is: " + count);
count++;
} while (count < 11);
}
}
A instrução break
A instrução break pode ser usada para terminar um ciclo de repetição (for, while ou do …
while).
Se, no decorrer de um ciclo de repetição o programa encontar a instrução break, termida de
imediato o ciclo e salta para a próxima instrução a seguir à repetição.
Exemplo:
int[] numbers = {1,2,3,4,5,6,7,8,9,10};
for (int i = 0; i < numbers.length; i++) {
if (numbers[i] == 6) {
break; //interrompe o ciclo for
}
System.out.println(numbers[i]);
}
Output do exemplo acima:
1
2
3
4
5
A instrução continue
A instrução continue, termina a iteração corrente de um ciclo (for, while ou do … while
) e inicia uma nova iteração.
Exemplo:
int[] numbers = {1,2,3,4,5,6,7,8,9,10};
for (int i = 0; i < numbers.length; i++) {
if (numbers[i] == 6) {
continue; //interrompe a iteração corrente e salta para a próxima
}
System.out.println(numbers[i]);
}
Output do exemplo acima:
1
2
3
4
5
7
8
9
10
