Iremos falar neste post das estruturas de repetição existentes na linguagem Java.
- A estrutura while
Síntaxe:
while ( expressao ) {
instrucoes;
}
A estrutura while executa o bloco de instruções enquanto a expressão é verdadeira.
Exemplo:
public class ExemploWhile {
public static void main(String[] args) {
int i = 1;
System.out.println("Preparando para tocar CD de"+
"Ivete Sangalo.");
while (i <= 11) {
System.out.printf("Tocando a faixa %d \n", i);
i++;
}
System.out.println("CD executado com sucesso.");
}
}
A saída do nosso programa seria:
Preparando para tocar CD de Ivete Sangalo.
Tocando a faixa 1.
Tocando a faixa 2.
Tocando a faixa 3.
Tocando a faixa 4.
Tocando a faixa 5.
Tocando a faixa 6.
Tocando a faixa 7.
Tocando a faixa 8.
Tocando a faixa 9.
Tocando a faixa 10.
Tocando a faixa 11.
CD executado com sucesso.
Ou seja, enquanto a variavel 'i' for menor ou igual a 11 as instruções contidas dentro do bloco while são executadas. - A estrutura do...while
Síntaxe:
do{
instrucoes;
}while( expressão );
Basicamente funciona da mesma forma que o while, mas o do...while primeiro executa as instruções do bloco 'do' para depois verificar a expressão contida no 'while'. Já o while primeiro verifica a expressão para depois executar o bloco de instruções.
Exemplo:
public class ExemploDoWhile {
public static void main(String[] args) {
int i = 1;
System.out.println("Preparando para tocar CD do"+
"Creedence Clearwater.");
do {
System.out.printf("Tocando a faixa %d.\n", i);
i++;
} while (i <= 11);
System.out.println("CD executado com sucesso.");
}
}
- A estrutura for
O for é uma estrutura de repetição de forma compacta. Ou seja, ao mesmo tempo você indica a expressão inicialização da sua iteração, a expressão de condição e a expressão de incremento.
Síntaxe:
for( inicialização ; condição ; incremento) {
instruções;
}
Onde as expressões de inicialização, condição e incremento podem ser omitidas e colocadas em outro local lógico no código.
Exemplo:
public class ExemploFor {
public static void main(String[] args) {
System.out.println("Preparando para ler o livro"+
"O Segredo.");
for (int i = 1; i <= 336; i++) {
System.out.printf("Lendo a página %d. \n", i);
}
System.out.println("Livro lido com sucesso.");
}
} - A saída para este exemplo seria:
Preparando para ler o livro O Segredo.
Lendo a página 1.
Lendo a página 2.
Lendo a página 3.
Lendo a página 4.
Lendo a página 5.
Lendo a página 6.
...
Lendo a página 333.
Lendo a página 334.
Lendo a página 335.
Lendo a página 336.
Livro lido com sucesso.Existe um tipo de for chamado for aprimorado que nos permite iterar por coleções e arrays de uma forma direta.Síntaxe:
for(tipo atributo: variavelDecolecaoOuArray){instruções;}Através desta estrutura nós percorreremos todo o array ou a coleção. Em cada iteração um valor é copiado do array ou da coleção para a variável 'atributo'. Faremos dois exemplos a seguir. O primeiro será mostrando um for aprimorado utilizando arrays e o segundo utilizando coleções.Exemplo 1:public class ExemploForAprimorado1 {public static void main(String[] args) {int [] faixas = {1,2,3,4,5,6,7,8,9,10,11};System.out.println("Preparando para tocar CD"+
"de CPM 22.");for (int i : faixas ) {System.out.printf("Tocando a faixa %d.\n", i);}System.out.println("CD executado com sucesso.");}}A saída deste exemplo é a mesma dos exemplos de while e do...while.
Exemplo 2:import java.util.ArrayList;import java.util.List;public class ExemploForAprimorado2 {public static void main(String[] args) {Listcarrinho = new ArrayList (); carrinho.add("MP5");carrinho.add("Celular");carrinho.add("DVDs");carrinho.add("Câmera digital");carrinho.add("Notebook");carrinho.add("Livros");System.out.println("Preparando para pagar os"+
"itens do carrinho.");for (String produto : carrinho ) {System.out.printf("Pagando o produto: %s."+
"\n", produto);}System.out.println("Produtos pagos com"+
"sucesso.");}}
A saída deste exemplo seria:Preparando para pagar os itens do carrinho.Pagando o produto MP5.Pagando o produto Celular.Pagando o produto DVDs.Pagando o produto Câmera digital.Pagando o produto Notebook.Pagando o produto Livros.Produtos pagos com sucesso.
Abraço e até mais.