Fala, galera! As estruturas de repetição são usadas em programação para executar um conjunto de instruções repetidamente enquanto uma determinada condição for verdadeira. Em Java, existem três estruturas de repetição: for, while e do-while.

A estrutura de repetição “for” em Java

A estrutura de repetição “for” é a mais comum e é usada quando o número de iterações é conhecido antecipadamente. A sintaxe básica do for é a seguinte:

for (inicialização; condição; atualização) { // bloco de código a ser repetido }

  • Inicialização: esta é a etapa onde a variável é inicializada. Ela é executada apenas uma vez no início do loop.
  • Condição: esta é a etapa onde a condição é verificada. Se a condição for verdadeira, o loop continua a ser executado. Se a condição for falsa, o loop é encerrado.
  • Atualização: esta é a etapa onde a variável é atualizadas após cada iteração do loop.

Por exemplo, o seguinte código usa o loop “for” para imprimir os números de 1 a 5:

for (int i = 1; i <= 5; i++) { System.out.println(i); }

Neste exemplo, a variável “i” é inicializada com o valor 1. A condição verifica se “i” é menor ou igual a 5 e, se for verdadeira, o bloco de código é executado. Em seguida, “i” é incrementada em 1 e a condição é verificada novamente. Isso é repetido até que a condição seja falsa.

A estrutura de repetição “while” em Java

A estrutura de repetição “while” é usada quando o número de iterações não é conhecido antecipadamente. A sintaxe básica do while é a seguinte:

while (condição) { // bloco de código a ser repetido }

O bloco de código é executado repetidamente enquanto a condição for verdadeira. Se a condição for falsa, o loop é encerrado.

Por exemplo, o seguinte código usa o loop “while” para imprimir os números de 1 a 5:

int i = 1; while (i <= 5) { System.out.println(i); i++; }

Neste exemplo, a variável “i” é inicializada com o valor 1. A condição verifica se “i” é menor ou igual a 5 e, se for verdadeira, o bloco de código é executado. Em seguida, “i” é incrementada em 1 e a condição é verificada novamente. Isso é repetido até que a condição seja falsa.

A estrutura de repetição “do-while” em Java

A estrutura de repetição “do-while” é semelhante ao “while”, mas garante que o bloco de código seja executado pelo menos uma vez, independentemente da condição ser verdadeira ou falsa. A sintaxe básica do “do-while” é a seguinte:

do { // bloco de código a ser repetido }

O bloco de código é executado uma vez antes que a condição de execução seja verificada. Se a condição for verdadeira, o bloco de código será executado novamente, e assim por diante, até que a condição se torne falsa.

Um exemplo do uso do do-while é pedir ao usuário para fornecer uma entrada válida:

import java.util.Scanner;

public class DoWhile {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int input;
        do {
            System.out.print("Digite um número entre 1 e 10: ");
            input = scanner.nextInt();
        } while (input < 1 || input > 10);
    
        System.out.println("Você digitou: " + input);
    }
}

Este código pede ao usuário para digitar um número entre 1 e 10 e, em seguida, verifica se o número digitado está dentro desse intervalo. Se o número não estiver dentro do intervalo, o usuário será solicitado a digitar outro número até que um número válido seja inserido.

Bônus for-each

O for-each loop, ou loop for aprimorado, é uma variação do loop for tradicional que foi introduzido no Java 5 para simplificar a iteração em arrays e coleções.

O for-each loop funciona de maneira similar ao loop for tradicional, mas em vez de iterar sobre uma faixa de valores, ele itera sobre cada elemento de um array ou coleção de forma sequencial, sem a necessidade de se preocupar com índices ou variáveis de controle.

A sintaxe do for-each loop é a seguinte:

for (Tipo variável: array) { // instruções }

  • Tipo é o tipo dos elementos na coleção ou do array.
  • variável é o nome da variável que representa cada elemento da coleção ou do array durante a iteração.
  • array é a coleção ou o array a ser percorrido.

Aqui está um exemplo simples de como usar o for-each loop para percorrer um array de inteiros:

int[] numeros = {1, 2, 3, 4, 5}; for (int numero: numeros) { System.out.println(numero); }

O loop percorre o array numeros e atribui cada elemento a variável numero. Em seguida, o bloco de código dentro do loop é executado para cada elemento. No exemplo acima, a saída do programa seria:

1 2 3 4 5

O for-each loop pode ser usado para percorrer qualquer tipo de coleção ou array, incluindo listas, conjuntos e maps. Além disso, ele é útil para reduzir o código necessário para percorrer uma coleção e para evitar erros relacionados à manipulação de índices.

É importante ressaltar que o for-each loop não é adequado para todas as situações, como quando é necessário obter o índice do elemento atual ou quando é necessário alterar o conteúdo da coleção durante a iteração. Nesses casos, o loop for tradicional deve ser usado em vez do for-each loop.

Conclusão

Os loops for, while e do-while são essenciais para a programação em Java e em muitas outras linguagens de programação. Cada um desses loops tem suas próprias vantagens e desvantagens, e é importante escolher o tipo de loop correto para a tarefa que você está tentando realizar. Com a prática e a experiência, você poderá determinar facilmente qual tipo de loop é o melhor para cada situação. Espero que tenham gostado do conteúdo de hoje, abraços e até a próxima!