Iga silmus sisse Java
Java Iga massiivi jaoks
For-Each Loop on veel üks for-tsükli vorm, mida kasutatakse massiivi läbimiseks. for-each loop vähendab oluliselt koodi ja tsüklis ei kasutata indeksit või pigem loendurit.
süntaksit:
For(<DataType of array/List><Temp variable name> : <Array/List to be iterated>){ System.out.println(); //Any other operation can be done with this temp variable. }
Võtame näite, kasutades stringi massiivi, mida soovite itereerida ilma loendureid kasutamata. Kaaluge stringi massiivi arrData, mis on lähtestatud järgmiselt:
String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
Kuigi võite teada selliseid meetodeid nagu suuruse leidmine massiivi ja seejärel itereerides läbi massiivi iga elemendi, kasutades traditsioonilist for-silmust (loendur, tingimus ja juurdekasv), peame leidma optimeeritud lähenemisviisi, mis ei kasuta ühtegi sellist loendurit.
See on "for" ahela tavapärane lähenemisviis:
for(int i = 0; i< arrData.length; i++){ System.out.println(arrData[i]); }
Saate vaadata loenduri kasutamist ja seejärel kasutada seda massiivi indeksina. Java annab võimaluse kasutada tsüklit "for", mis itereerib läbi massiivi iga elemendi.
Siin on massiivi kood, mille me varem deklareerisime -
for (String strTemp : arrData){ System.out.println(strTemp); }
Näete silmuste erinevust. Kood on oluliselt vähenenud. Samuti ei kasutata tsüklis indeksit või pigem loendurit. Veenduge, et foreach-tsüklis deklareeritud andmetüüp peab ühtima andmetüübiga massiiviloend et te kordate.
Iga tsükli jaoks näide:
Siin on kogu klass, kes näitab ülaltoodud selgitust -
class UsingForEach { public static void main(String[] args) { String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"}; //The conventional approach of using the for loop System.out.println("Using conventional For Loop:"); for(int i=0; i< arrData.length; i++){ System.out.println(arrData[i]); } System.out.println("\nUsing Foreach loop:"); //The optimized method of using the for loop - also called the foreach loop for (String strTemp : arrData){ System.out.println(strTemp); } } }
Eeldatav väljund:
Using conventional For Loop: Alpha Beta Gamma Delta Sigma Using Foreach loop: Alpha Beta Gamma Delta Sigma