Loop while em java

O loop while em Java é uma estrutura de controle que permite repetir um bloco de código enquanto uma condição booleana for verdadeira. Ele é útil quando não sabemos de antemão quantas vezes o código precisa ser repetido, e a condição de parada é baseada em algum critério dinâmico.

Sintaxe Loop do while em java

while (condição) {
    // Bloco de código a ser executado enquanto a condição for verdadeira
}

  • condição: Uma expressão booleana que é avaliada antes de cada iteração. Se for verdadeira, o bloco de código dentro do while será executado. Se for falsa, o loop termina.

Exemplo básico Loop while em java

Aqui está um exemplo simples de um loop while que imprime números de 1 a 5:

public class ExemploWhile {
    public static void main(String[] args) {
        int contador = 1;

        while (contador <= 5) {
            System.out.println(contador);
            contador++;
        }
    }
}

Neste exemplo:

  • O valor de contador começa em 1 e é incrementado a cada iteração.
  • O loop continua enquanto contador for menor ou igual a 5.
  • Quando contador chega a 6, a condição contador <= 5 se torna falsa e o loop termina.

Como funciona o Loop while em java

  1. Avaliação da condição: Antes de cada execução do bloco de código, a condição é avaliada.
  2. Execução do bloco: Se a condição for verdadeira, o código dentro do bloco é executado.
  3. Reavaliação da condição: Após a execução do bloco, a condição é reavaliada.
  4. Repetição ou término: Se a condição continuar verdadeira, o ciclo se repete. Caso contrário, o loop termina.

Exemplo com uma condição dinâmica

Vamos usar o while para um cenário onde o usuário precisa adivinhar um número:

import java.util.Scanner;

public class AdivinharNumero {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int numeroCorreto = 7;
        int palpite = 0;

        while (palpite != numeroCorreto) {
            System.out.print("Adivinhe o número: ");
            palpite = scanner.nextInt();
        }

        System.out.println("Parabéns! Você adivinhou o número.");
    }
}




Neste exemplo:

  • O loop continua solicitando que o usuário adivinhe o número até que o palpite seja igual ao número correto.
  • A condição de saída é quando o palpite é igual ao número correto (palpite != numeroCorreto).

Loop infinito

Cuidado ao usar o loop while para garantir que a condição eventualmente se torne falsa, ou você acabará com um loop infinito. Por exemplo:

while (true) {
    // Este código vai rodar para sempre, a menos que haja uma instrução de saída
}

Este código continuará sendo executado indefinidamente a menos que seja interrompido manualmente ou se houver uma instrução que force a saída, como break.

Exemplo com break

A palavra-chave break pode ser usada para interromper o loop antes que a condição se torne falsa. Veja um exemplo:

public class ExemploBreak {
    public static void main(String[] args) {
        int i = 0;

        while (i < 10) {
            System.out.println(i);
            if (i == 5) {
                break; // Sai do loop quando i for igual a 5
            }
            i++;
        }
    }
}

Neste exemplo:

  • O loop imprime os números de 0 a 5.
  • Quando i é igual a 5, o break interrompe o loop, mesmo que a condição ainda seja verdadeira.

Conclusão

O loop while é bastante útil quando você não sabe quantas vezes o código precisa ser repetido, mas tem uma condição que deve ser atendida. Ele oferece flexibilidade, mas é importante garantir que a condição de saída seja eventualmente alcançada para evitar loops infinitos.

Se precisar de mais exemplos ou explicações, é só avisar!