Kuidas kasutada for-each-tsükleid Java-s
For-each Java-tsükli abil saate massiive ja kogusid kiiremini ja turvalisemalt läbida, vältida vigu ja parandada koodi loetavust. Selles õpetuses selgitame for-each-meetodi struktuuri ja eeliseid üksikasjalikumalt ning näitame, kuidas tsüklit oma koodis kasutada.
Milleks kasutatakse Java for-each-tsüklit?
For-each-tsüklit kasutatakse paljudes olukordades, kus Java-arendajad peavad töötama massiividega. Näiteks on tavaline kasutada seda massiivi konkreetsete elementide väljastamiseks või otsimiseks. For-each-tsüklit saab samuti kasutada ArrayList-ina rakendatud loendi elementide läbimiseks. Igas iteratsioonis saate teha automaatseid manipuleerimisi tavaliste Java-operaatoritega, ilma et peaksite iga elemendi jaoks eraldi avaldust kirjutama.
Erinevalt Java for-tsüklist ei pea Java for-each-tsüklit kasutades arvestama massiivi indeksit ega suurust. Nende aspektide arvestamata jätmine tähendab, et väldite riski, et indeks jääb kehtiva vahemiku piiridest välja. For-each-tsükkel kasutab sisemiselt iteratorit, et kutsuda üles massiivi või loendi iga element ükshaaval. Iteraator loendab automaatselt massiivi või nimekirja läbi ja lõpetab tsükli, kui kõik elemendid on läbi käidud.
Kui aga peate indeksile juurde pääsema, et muuta järgmist või eelmist elementi, võib olla mõistlikum kasutada for- või while-tsüklit.
Mis on Java for-each-tsükli süntaks?
Java keeles for-each tsükli põhiline süntaks näeb välja järgmine:
for (type item : array | collection) {
// code block
}Javaarray/collection: Massiivi või kogumi nimiitem: Massiivi või kogumi iga element on määratud sellele muutujaletype: Massiivi või kogumi andmetüüp
Silmuses täidetakse koodiblokk iga iteratsiooni puhul.
Näited Java for-each-tsükli kasutamise kohta
Allpool näitame, kuidas kasutada for-each-meetodit ekraanil kuvatava väljundi ja aritmeetiliste operatsioonide abil.
Elementide väljastamine konsooli
For-each-tsükli abil saate kuvada ekraanil massiivi või kogumi iga elemendi.
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
MelissaJavaSamuti on võimalik väljastada loendi elemendid analoogiliselt. Silmuse lähtekood jääb muutumatuks.
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);
}
}
}JavaIga nimekirjas oleva nime jaoks luuakse string:
Sophie
Mia
Harrison
Elliot
MelissaJavaMassiivi või kogumi elementide summa arvutamine
Java meetod for-each lihtsustab aritmeetiliste operatsioonide, näiteks massiivi või loendi elementide liitmise, teostamist. Operaatorid on seotud muutujaga, mis toimib iga elemendi asendusmärgina silmuse koodiblokis.
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);
}
}JavaMassiivi numbrid liidetakse järjest muutujale sum, mis oli eelnevalt deklareeritud väljaspool tsüklit. Väljund on:
Result = 42Java22521435b1ac7a57243924ad4925f3b8
4e3f99762c00e5fd885e501519891687
e7dcb55429a1ad05a2d26d997b010049
03a997ae1adf78a8b72f58f1bb60ea2d