Hoe gebruik je for-each-lussen in Java?
Met de for-each Java-lus kunt u arrays en collecties sneller en veiliger doorlopen, fouten vermijden en de leesbaarheid van de code verbeteren. In deze tutorial leggen we de structuur en voordelen van de for-each-methode in meer detail uit en laten we u zien hoe u de lus in uw code kunt gebruiken.
Waarvoor wordt de for-each Java-lus gebruikt?
De for-each-lus wordt in veel scenario’s gebruikt waarin Java-ontwikkelaars met arrays moeten werken. Een veelvoorkomend gebruik is bijvoorbeeld het uitvoeren of zoeken van specifieke elementen van een array. De for-each-lus kan ook worden gebruikt om elementen in een lijst te doorlopen die is geïmplementeerd als een ArrayList. In elke iteratie kunt u automatische bewerkingen uitvoeren met gangbare Java-operatoren, zonder dat u voor elk element een aparte instructie hoeft te schrijven.
In tegenstelling tot de for-lus in Java hoeft u bij het gebruik van de for-each Java-lus geen rekening te houden met de index of grootte van de array. Doordat u geen rekening hoeft te houden met deze aspecten, voorkomt u het risico dat een index buiten het geldige bereik valt. De for-each-lus gebruikt intern een iterator om elk element van de array of lijst één voor één op te roepen. De iterator telt automatisch door de array of lijst en beëindigt de lus wanneer alle elementen zijn doorlopen.
Als u echter toegang tot de index nodig hebt om het volgende of vorige element te bewerken, is het wellicht zinvoller om de for-lus of de while-lus te gebruiken.
Wat is de syntaxis van de for-each Java-lus?
De basissyntaxis van een for-each-lus in Java ziet er als volgt uit:
for (type item : array | collection) {
// code block
}Javaarray/collection: Naam van de array of verzamelingitem: Elk element van de array of verzameling wordt aan deze variabele toegewezentype: Datatype van de array of verzameling
Binnen de lus wordt het codeblok voor elke iteratie uitgevoerd.
Voorbeelden van het gebruik van de for-each Java-lus
Hieronder laten we zien hoe je de for-each-methode kunt gebruiken met behulp van schermuitvoer en rekenkundige bewerkingen.
Elementen naar de console uitvoeren
Met behulp van de for-each-lus kunt u elk element van een array of verzameling op het scherm weergeven.
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
MelissaJavaHet is ook mogelijk om de elementen van een lijst analoog uit te voeren. De broncode voor de lus blijft ongewijzigd.
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);
}
}
}JavaVoor elke naam uit de lijst wordt een tekenreeks gegenereerd:
Sophie
Mia
Harrison
Elliot
MelissaJavaDe som van elementen in een array of verzameling berekenen
De for-each Java-methode maakt het eenvoudig om rekenkundige bewerkingen uit te voeren, zoals het optellen van de elementen in een array of lijst. Operatoren worden gekoppeld aan de variabele die als plaatshouder dient voor elk element binnen het codeblok van de lus.
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);
}
}JavaDe getallen van de array worden achtereenvolgens opgeteld bij de variabele sum, die eerder buiten de lus werd gedeclareerd. De uitvoer is:
Result = 42Java