English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico de Java

Java Controle de Fluxo

Java Array

Java Orientação a Objetos (I)

Java Orientação a Objetos (II)

Java Orientação a Objetos (III)

Tratamento de Exceções Java

Java Lista (List)

Java Fila (Queue)

Java Mapa (Map)

Java Conjunto (Set)

Java Entrada e Saída (I/O)

Java Reader/Writer

Outros tópicos do Java

Java for-each loop (loop de varredura)

Neste tutorial, vamos aprender outra forma de loop for no Java, conhecida como loop for enhanced ou for-each loop.

No Java, ao lidar com arrays e coleções, podemos usar o loop for em sua forma enhanced. Também conhecido como for-each loop. Isso porque o loop varre cada elemento do array ou coleção.

Para entender o for-Antes de usar o foreach loop, certifique-se de entender:

for loop e for-Diferenças entre each loops

Por que preferir o loop for ao lidar com arrays-Each loop, em vez de loop for, vamos ver o exemplo a seguir.

Aqui no exemplo mostramos como usar o loop for padrão para varrer os elementos de um array.

class ForLoop {
    public static void main(String[] args) {
      
        char[] vowels = {'a', 'e', 'i', 'o', 'u'};
        for (int i = 0; i < vowels.length; ++ i) {
            System.out.println(vowels[i]);
        }
    }
}

output:

a
e
i
o
u

Agora, vamos usar o for-O each loop executa a mesma tarefa.

class AssignmentOperator {
   public static void main(String[] args) {
      
      char[] vowels = {'a', 'e', 'i', 'o', 'u'};
      // Loop foreach
      for (char item : vowels) {
         System.out.println(item);
      }
   }
}

output:

a
e
i
o
u

Aqui, podemos ver que a saída dos dois programas é a mesma.

Quando analisamos cuidadosamente esses dois programas, podemos notar que o for-O each loop é mais fácil de escrever e torna nosso código mais legível. É por isso que é chamado de loop for enhanced.

Portanto, é recomendável usar o loop for padrão o mais possível.

Java for-each loop

Primeiro vamos olhar para o for-A sintaxe do each loop:

for(data_type item : collections) {
    ...
}

Aqui,

  • collection -A coleção ou array que você precisa varrer.

  • item -O item individual da coleção.

for-Como o each loop funciona?

Para cada iteração, execute o for-Each loop, que é o for-Como o each loop funciona no Java.

  • iteration - Varrer cada item de uma coleção ou array (collections) dada

  • Armazenar - Cada item da variável (item)

  • ERepetir a execuçãoO corpo da instrução dentro do loop.

Vamos esclarecer isso claramente com um exemplo.

Exemplo: for-each loop

O programa a seguir calcula a soma de todos os elementos de um array de inteiros.

class EnhancedForLoop {}}
    public static void main(String[] args) {
      
        int[] numbers = {3, 4, 5, -5, 0, 12};
        int sum = 0;
      
        for (int number: numbers) {
            sum += number;
        }
      
        System.out.println("Sum = ", + sum);
    }
}

output:

Sum = 19

In the above program, the for-The execution of the each loop is as follows:

iterationvalue
1number = 3 when, sum = 0 + 3 = 3
2number = 4 when, sum = 3 + 4 = 7
3number = 5 when, sum = 7 + 5 = 12
4number = -5 when, sum = 12 + (-5) = 7
5when number = 0, sum = 7 + 0 = 7
6number = 12 when, sum = 7 + 12 = 19

You can see the for in each iteration-each loop

  • traverse each element of the numbers array

  • store it in the number variable

  • and execute the main body, adding the number to the variable sum, and finally getting the total (sum)