Kako uporabljati zanke for-each v Javi
Z zanko for-each Java lahko hitreje in varneje prehajate med nizi in zbirkami, se izognete napakam in izboljšate berljivost kode. V tem vodiču podrobneje razložimo strukturo in prednosti metode for-each ter vam pokažemo, kako zanko uporabiti v svoji kodi.
Za kaj se uporablja Java zanka for-each?
Zanka for-each se uporablja v številnih scenarijih, v katerih morajo razvijalci Java delati z nizi. Pogosta uporaba je na primer izpis ali iskanje določenih elementov niza. Zanka for-each se lahko prav tako uporabi za ponavljanje elementov v seznamu, ki je implementiran kot ArrayList. V vsakem ponavljanju lahko izvajate avtomatske manipulacije s splošnimi Java operaterji, ne da bi morali za vsak element napisati ločeno izjavo.
V nasprotju z zanko for v Javi, ko uporabljate zanko for-each Java, vam ni treba upoštevati indeksa ali velikosti niza. Ker vam ni treba upoštevati teh vidikov, se izognete tveganju, da bi indeks presegel veljavno območje. Zanka for-each notranje uporablja iterator, da pokliče vsak element niza ali seznama po enega. Iterator samodejno prešteje niz ali seznam in zaključi zanko, ko so vsi elementi prehodeni.
Če pa potrebujete dostop do indeksa, da bi uredili naslednji ali prejšnji element, je morda bolj smiselno uporabiti zanko for ali zanko while.
Kakšna je sintaksa zanke for-each v Javi?
Osnovna sintaksa zanke for-each v Javi je naslednja:
for (type item : array | collection) {
// code block
}Javaarray/collection: Ime niza ali zbirkeitem: Vsak element niza ali zbirke je dodeljen tej spremenljivkitype: Podatkovni tip niza ali zbirke
Znotraj zanke se blok kode izvede za vsako iteracijo.
Primeri uporabe zanke for-each v Javi
Spodaj bomo prikazali, kako uporabiti metodo for-each z uporabo izpisa na zaslonu in aritmetičnih operacij.
Izpisovanje elementov na konzolo
Z uporabo zanke for-each lahko na zaslonu prikažete vsak element niza ali zbirke.
class Main {
public static void main(String[] args) {
// array
String[] names = {"Sophie", "Mia", "Harrison", "Elliot", "Melissa"};
// for each loop
for (String name: names) {
System.out.println(name);
}
}
}
In the console, we get the output:
```Java
Sophie
Mia
Harrison
Elliot
MelissaJavaElementi seznama se lahko izpišejo tudi analogno. Izvorna koda zanke ostane nespremenjena.
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// list
ArrayList<String> names = new ArrayList<String>();
names.add( "Sophie" );
names.add( "Mia" );
names.add( "Harrison" );
names.add( "Elliot" );
names.add( "Melissa" );
// for each loop
for(String name: names){
System.out.println(name);
}
}
}JavaZa vsako ime iz seznama se generira niz:
Sophie
Mia
Harrison
Elliot
MelissaJavaIzračunavanje vsote elementov v nizu ali zbirki
Java metoda for-each olajša izvajanje aritmetičnih operacij, kot je seštevanje elementov v nizu ali seznamu. Operacije so povezane s spremenljivko, ki služi kot zaznamek za vsak element znotraj kodnega bloka zanke.
class Main {
public static void main(String[] args) {
// array
int[] numbers = {10, 34, 7, 19, -28};
int sum = 0;
// addition
for (int number: numbers) {
sum += number;
}
System.out.println("Result = " + sum);
}
}JavaŠtevilke v nizu se zaporedno dodajo spremenljivki sum, ki je bila prej deklarirana zunaj zanke. Izhod je:
Result = 42Java