Continuando com as estruturas de controle de Fluxo:
O comando for
for (int i = 0; i < valor; i++) {
//instruções
}
• Executa corpo um número específico de vezes:
valor vezes
• Na primeira execução de corpo, i é 0
• O valor de i é incrementado a cada execução de
corpo
• i pode ser acessado dentro de corpo e deixa de
existir após execução do for
Exemplo:
Scanner scanner = new Scanner(System.in);
int soma = 0;
for (int i = 0; i < 5; i++) {
soma += scanner.nextInt();
}
System.out.println("A soma de 5 números digitados foi: " + soma);
Executa cinco vezes o corpo do for. Neste caso,lê cinco números do teclado e imprime a soma deles.
O comando for deve ser usado sempre que se sabe o número de vezes que o comando deve ser repetido.
O comando while:
while(expressãoBooleana) {
//instruções
}
• Executa corpo várias vezes até que a
avaliação de expressãoBooleana retorne
false
• A expressãoBooleana é novamente avaliada após cada execução do corpo;
• Não executa corpo nenhuma vez caso, de início, a avaliação da expressão Booleana retorne false.
Exemplo:
Scanner scanner = new Scanner(System.in);
int soma = 0;
while (soma < 100) {
soma += scanner.nextInt();
}
System.out.println("A soma dos valores digitados foi: " + soma);
Lê e soma números enquanto a soma dos valores digitados é menor do que 100 .
O while deve ser usado sempre que não se sabe o número de vezes que certos comandos devem ser retidos!
O comando do-while
do {
corpo
} while(expressãoBooleana);
• Executa corpo pelo menos uma vez até que a avaliação da expressãoBooleana retorne false
• A expressão é novamente avaliada após cada execução do corpo
• Única diferença para o while é que o corpo é avaliado sempre, pelo menos uma vez, independente se o resultado de expressãoBooleana é falsa ou não.
O comando switch.
switch(expressão) {
case rotulo1:
Comandos1;
break;
case rotulo2:
Comandos2;
break;
...
default:
Comandos
}
• Avalia-se a expressão
• Executam-se os comandos do case, cujo rótulo é igual a avaliação da expressão
• Executa-se os comandos de default, caso valor resultante da expressão não seja igual a nenhum dos módulos
Exemplo:
Scanner scanner = new Scanner(System.in);
String textoDoTeclado = scanner.next();
char resposta = textoDoTeclado.charAt(0);
boolean retorno;
switch (resposta) {
case 's':
case 'S':
return = true;
break;
case 'n':
case 'N':
return = false;
break;
default:
return = false;
System.out.println("Erro");
}
Nenhum comentário:
Postar um comentário