Sådan bruges for-each-sløjfer i Java
Med for-each Java-sløjfen kan du gennemgå arrays og samlinger hurtigere og mere sikkert, undgå fejl og forbedre kodens læsbarhed. I denne vejledning forklarer vi strukturen og fordelene ved for-each-metoden mere detaljeret og viser dig, hvordan du bruger sløjfen i din kode.
Hvad bruges for-each Java-sløjfen til?
For-each-sløjfen bruges i mange scenarier, hvor Java-udviklere skal arbejde med arrays. Et almindeligt anvendelsesformål er f.eks. at udskrive eller søge efter bestemte elementer i en array. For-each-sløjfen kan ligeledes bruges til at gennemløbe elementer i en liste, der er implementeret som en ArrayList. I hver iteration kan du udføre automatiske manipulationer med almindelige Java-operatorer uden at skulle skrive en separat sætning for hvert element.
I modsætning til for-løkken i Java behøver du ikke tage højde for arrayets indeks eller størrelse, når du bruger for-each-løkken i Java. Da du ikke behøver at tage højde for disse aspekter, undgår du risikoen for, at et indeks ligger uden for det gyldige interval. For-each-løkken bruger internt en iterator til at kalde hvert element i arrayet eller listen op én efter én. Iteratoren tæller automatisk gennem arrayet eller listen og afslutter sløjfen, når alle elementer er gennemgået.
Hvis du imidlertid har brug for at få adgang til indekset for at redigere det næste eller forrige element, kan det være mere fornuftigt at bruge for-løkken eller while-løkken.
Hvad er syntaksen for for-each Java-sløjfen?
Den grundlæggende syntaks for en for-each-loop i Java ser således ud:
for (type item : array | collection) {
// code block
}Javaarray/collection: Navnet på arrayet eller samlingenitem: Hvert element i arrayet eller samlingen tildeles denne variabeltype: Datatype for arrayet eller samlingen
Inden for løkken udføres kodeblokken for hver iteration.
Eksempler på, hvordan man bruger for-each Java-sløjfen
Nedenfor viser vi, hvordan man bruger for-each-metoden ved hjælp af skærmoutput og aritmetiske operationer.
Udskrivning af elementer til konsollen
Ved hjælp af for-each-sløjfen kan du vise hvert element i en matrix eller samling på skærmen.
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
MelissaJavaDet er også muligt at udskrive elementerne i en liste analogt. Kildekoden for løkken forbliver uændret.
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);
}
}
}JavaDer genereres en streng for hvert navn på listen:
Sophie
Mia
Harrison
Elliot
MelissaJavaBeregning af summen af elementer i en matrix eller samling
Java-metoden for-each gør det nemt at udføre aritmetiske operationer, såsom at tilføje elementer i en matrix eller liste. Operatører er knyttet til den variabel, der fungerer som pladsholder for hvert element inden for loopens kodeblok.
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);
}
}JavaTallene i arrayet lægges i rækkefølge til variablen sum, som tidligere blev deklareret uden for løkken. Outputtet er:
Result = 42Java22521435b1ac7a57243924ad4925f3b8
13df017efe49c76027ec13b880e5cad6