Estrutura for-each
Semelhante a um for
normal, existe uma estrutura específica para iterar por
uma coleção (por exemplo, um vetor). Essa estrutura possui a seguinte sintaxe:
for (T nome: coleção) {
// Sequência de comandos
}
Em que T
é o tipo de cada item da coleção (var
é permitido), nome
é o
nome da variável que guardará cada item da coleção. Para ver melhor como ele
funciona:
var array = new int[] {25, 19, -12};
for (var item: array) {
System.out.println(item);
}
O programa acima, ao ser executado, mostrará:
25
19
-12
Ou seja, a cada iteração, item
guarda um dos itens de array
. Esse for
é
util quando o índice do elemento não é importante (no exemplo acima, o que
importa é acessar os elementos em ordem, mas efetivamente qual o índice deles
não é importante). O código é equivalente (perceba: equivalente, mas não
igual!) a:
var array = new int[] {25, 19, -12};
for (var i = 0; i < array.length; i++) {
var item = array[i];
System.out.println(item);
}
No fundo, o que o for-each
faz é aproveitar a interface
Iterable
dos padrões da linguagem, mas isso será visto noutro tutorial.