Você está na página 1de 4

LAÇO DE REPETIÇÃO

WHILE
ERNESTO JUNIOR
Laço While
• A declaração while executa repetidamente um bloco de instruções
enquanto uma expressão de controle (teste lógico) retornar o valor
lógico verdadeiro. Quando essa expressão de controle retorna falso, o
bloco de instruções não é mais executado e o loop é encerrado.
Sintaxe:
while (condição) {
instruções a executar;
}
Exemplo 01 – Exibir na tela nos números de 1
até 50, usando uma variável contadora.
int contador = 1;
while (contador <= 50) {
System.out.println(contador);
contador++;
}
• A variável contador iremos deixar como inteiro e iniciar com o valor 1
• Com o laço While, iremos fazer ele repetir o bloco de códigos até 50x
• A variável contador será sempre incrementado +1, até que a condição
retorne falso e como será ?
• Enquanto o contador for menor ou igual 50 ele retorna verdadeiro e com
isso a instrução será executada.
Usamos um Scanner que chamamos de entrada, para que

Exemplo 02 seja possível capturar dados que o usuário digita via


teclado.

Foi criado uma variável chamada nome,


import java.util.Scanner;
para armazenar o valor que iremos testar, o
public static void main(String[] args) {
valor que o Scanner vai retornar.
Scanner entrada = new Scanner(System.in);
String nome;
Pediremos para o usuário digitar o nome dele e colocamos uma
System.out.println("Digite seu nome ou s para sair:");
mensagem para inserir o s, caso queira sair.
nome = entrada.nextLine();
Na linha seguinte, a gente captura o que o usuário vai digitar e usamos o método
nextLine() no objeto Scanner, p/ capturar o que foi escrito e guardar na variável nome do
tipo string e a variável nome é quem será testada no nosso laço while que estará na linha
seguinte.

while (!nome.equals("s")) Em java a gente não compara strings usando por exemplo (==) como
fazemos com números, para string, utilizamos um método da própria
{ System.out.printf("Bem-vindo %s\n", nome);
string que no caso é “nome.equals”, abre parêntese e dentro do
System.out.println("Digite seu nome ou s para sair:"); parêntese coloca o valor que queremos comparar com o conteúdo da
nome = entrada.nextLine(); variável. Então estamos verificando se na variável ”nome”, o conteúdo
} é igual a “s”, se o usuário digitar “S”, é para sair do programa.
Mas não queremos que saia do programa, queremos que ele escreva o código do bloco, enquanto “S”
System.out.println("Fim da execução!");
não for digitado, por isso colocamos o “!” na frente da instrução, é um operador lógico de negação.
Com isso a gente inverte o valor lógico da linha, se o “nome.equals” for igual a S, ele sai do programa, só
que para sair do programa, ele precisa retornar falso e não verdadeiro, então a gente nega o verdadeiro
e finaliza o nosso laço while.
Agora se o usuário digitar qualquer outra coisa, não será igual a S, será falso e se for falso ele encerra o
loop, então com “!” a gente nega e transforma em verdadeiro e cairá no bloco.

Você também pode gostar