Laço For-Each
Você pode se perguntar por que abordamos este loop na seção sobre arrays. Isso ocorre porque este loop foi projetado especificamente para uso com arrays ou coleções. Você explorará coleções com mais profundidade em um curso separado.
O que é um for-each loop?
O for-each loop, também chamado de enhanced for loop, oferece uma maneira concisa e simplificada de iterar sobre os elementos de um array ou qualquer coleção iterável em Java. Ele elimina a necessidade de indexação explícita e simplifica o código.
A sintaxe deste loop é a seguinte:
Main
for (ElementType variable : iterable) { // Code to be executed for each element }
Explicação de cada elemento:
ElementType
: o tipo de dado dos elementos no array;variable
: uma variável que representa cada elemento do array em cada iteração;iterable
: o array ou coleção iterável que se deseja percorrer.
O laço for-each
itera automaticamente sobre cada elemento do array ou coleção iterável, atribuindo-o à variável em cada iteração até que todos os elementos sejam processados.
Veja um exemplo de uso do laço for-each
:
Main
package com.example; public class Main { public static void main(String[] args) { int[] array = {1, 2, 3, 4, 5}; for (int element : array) { System.out.println(element); } } }
Também é possível realizar operações em cada elemento de um array utilizando um for-each
loop.
Vamos considerar uma tarefa de exemplo:
É necessário multiplicar cada elemento de um array de double por 3 e exibir o resultado na tela utilizando um for-each
loop.
Main
package com.example; public class Main { public static void main(String[] args) { double[] array = {1.5, 2.0, 3.4, 4.5, 5.0}; for (double element : array) { element = element * 3; System.out.println(element); } } }
Como pode ser observado, cada elemento está sendo multiplicado por 3 sem o uso de indexação, utilizando a instrução element = element * 3;
.
Swipe to start coding
Imagine que você trabalha em um armazém e recebe um array contendo os pesos dos pacotes.
Sua tarefa é escrever um programa que verifique se há pacotes com pesos negativos.
- Utilize um laço for-each para percorrer todos os pesos dos pacotes.
- Dentro do laço, verifique se o peso atual é negativo (
< 0
). - Se um peso negativo for encontrado, saia do laço e retorne
false
. - Se todos os valores forem não negativos, retorne
true
.
Solução
solution
Obrigado pelo seu feedback!