O loop for-each Java ou loop for aprimorado foi introduzido desde J2SE 5.0. Ele fornece uma abordagem alternativa para percorrer o array ou coleção em Java. É usado principalmente para percorrer os elementos da matriz ou da coleção. A vantagem do loop for-each é que ele elimina a possibilidade de bugs e torna o código mais legível. É conhecido como loop for-each porque percorre cada elemento um por um.
A desvantagem do loop for aprimorado é que ele não pode percorrer os elementos na ordem inversa. Aqui, você não tem a opção de pular nenhum elemento porque ele não funciona com base no índice. Além disso, você não pode percorrer apenas os elementos pares ou ímpares.
Porém, é recomendado usar o loop for-each Java para percorrer os elementos do array e da coleção porque torna o código legível.
Vantagens
- Isso torna o código mais legível.
- Elimina a possibilidade de erros de programação.
Sintaxe
A sintaxe do loop for-each Java consiste em data_type com a variável seguida por dois pontos (:) e, em seguida, array ou coleção.
for(data_type variable : array | collection){ //body of for-each loop }
Como funciona?
O loop Java for-each percorre o array ou coleção até o último elemento. Para cada elemento, ele armazena o elemento na variável e executa o corpo do loop for-each.
Exemplo de loop For-each: percorrendo os elementos da matriz
//An example of Java for-each loop class ForEachExample1{ public static void main(String args[]){ //declaring an array int arr[]={12,13,14,44}; //traversing the array with for-each loop for(int i:arr){ System.out.println(i); } } }Teste agora
Saída:
12 12 14 44
Vejamos outro loop for-each do Java onde vamos totalizar os elementos.
class ForEachExample1{ public static void main(String args[]){ int arr[]={12,13,14,44}; int total=0; for(int i:arr){ total=total+i; } System.out.println('Total: '+total); } }
Saída:
Total: 83
Exemplo de loop For-each: percorrendo os elementos da coleção
import java.util.*; class ForEachExample2{ public static void main(String args[]){ //Creating a list of elements ArrayList list=new ArrayList(); list.add('vimal'); list.add('sonoo'); list.add('ratan'); //traversing the list of elements using for-each loop for(String s:list){ System.out.println(s); } } }Teste agora
Saída:
vimal sonoo ratanbaixe este exemplo