Confronta due pezzi di codice.
Codice 1:
int count = 0;

for (int i = 0; i < array.length; i++) {
   if (array[i].equals("x")) {
      count++;
   }
}
Codice 2:
int count = 0;

foreach (String item in array) {
  if (item == "x") {
    count++;
  }
} 

Traduzione in italiano:
Codice 1:
int count = 0;

per (int i = 0; i < array.length; i++) {
   se (array[i].equals("x")) {
      count++;
   }
}
Codice 2:
int count = 0;

per ogni (String item in array) {
  se (item == "x") {
    count++;
  }
}
Il codice 1 è un tradizionale ciclo for, che itera su un array e conta le occorrenze dell'elemento "x". Il codice 2 è scritto in uno stile di programmazione funzionale e utilizza un ciclo foreach per iterare sull'array e contare le occorrenze di "x". Entrambi i frammenti raggiungono lo stesso risultato, con la differenza che il codice 1 utilizza una variabile di indice e il codice 2 no.