
Lógica e Algoritmos com Java
24 - ForEach
O laço foreach, também conhecido como "enhanced for loop" (laço for aprimorado), foi introduzido no Java 5 e é uma maneira mais simples de iterar sobre arrays e coleções. Ele permite percorrer os elementos de uma coleção sem precisar de um índice explícito.
1. Sintaxe do Laço foreach
A sintaxe básica do foreach é a seguinte:
for (Tipo elemento : coleção) { // Corpo do loop - ações a serem realizadas para cada elemento }
- Tipo: O tipo de dados dos elementos da coleção (por exemplo, int, String, etc.).
- elemento: O nome da variável que representa o elemento atual da coleção durante a iteração.
- coleção: O array ou coleção que será percorrido.
2. Como Funciona o Laço foreach?
O laço foreach percorre cada elemento de uma coleção ou array e executa um conjunto de instruções para cada um desses elementos.
Exemplo de Laço foreach com Array de Strings:
public class ExemploForeach { public static void main(String[] args) { String[] nomes = {"Carlos", "Maria", "João"}; // Usando o laço foreach para percorrer o vetor de nomes for (String nome : nomes) { System.out.println(nome); // Exibe cada nome na tela } } }
Explicação: No exemplo acima, o laço foreach percorre o vetor nomes. Para cada iteração, a variável nome recebe o valor do próximo nome no vetor e imprime esse nome no console.
3. Vantagens do Laço foreach
- Simplicidade: O código fica mais simples e legível, sem a necessidade de controlar índices manualmente.
- Menos erros: Como o índice não é usado, diminui-se o risco de acessar um índice inválido ou fora do intervalo do vetor.
- Leitura mais clara: O código expressa de forma direta a intenção de percorrer uma coleção ou array.
4. Limitações do Laço foreach
- Não permite modificar o índice ou o elemento diretamente: Não podemos alterar o índice da coleção nem modificar diretamente os elementos (a menos que a coleção seja mutável).
- Não funciona com índices em coleções não ordenadas: O foreach é mais indicado para coleções em que a ordem dos elementos não é importante, como vetores e listas ordenadas.
5. Exemplo de Laço foreach com Array de Números
public class ExemploForeachNumeros { public static void main(String[] args) { int[] numeros = {1, 2, 3, 4, 5}; // Usando o laço foreach para percorrer o vetor de números for (int numero : numeros) { System.out.println("Número: " + numero); // Exibe cada número } } }
Explicação: No exemplo acima, o vetor numeros é percorrido com o laço foreach. Para cada iteração, o valor do elemento atual é atribuído à variável numero, que é então exibido no console.
6. Saída Esperada
Quando o código é executado e o vetor de números é percorrido, a saída será:
Número: 1 Número: 2 Número: 3 Número: 4 Número: 5