For-hver sløjfe ind Java
Java For hver Array
For-Each Loop er en anden form for for-løkke, der bruges til at krydse arrayet. for-each loop reducerer koden betydeligt, og der er ingen brug af indekset eller rettere tælleren i løkken.
Syntaks:
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. }
Lad os tage eksemplet ved at bruge en String-array, som du vil iterere over uden at bruge nogen tællere. Overvej en String array arrData initialiseret som følger:
String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
Selvom du måske kender metoder som at finde størrelsen på matrix og derefter gentage hvert element i arrayet ved at bruge det traditionelle for loop (tæller, betingelse og stigning), skal vi finde en mere optimeret tilgang, der ikke vil bruge en sådan tæller.
Dette er den konventionelle tilgang til "for"-løkken:
for(int i = 0; i< arrData.length; i++){ System.out.println(arrData[i]); }
Du kan se brugen af tælleren og derefter bruge den som indeks for arrayet. Java giver en måde at bruge "for"-løkken, der vil iterere gennem hvert element i arrayet.
Her er koden for det array, som vi havde erklæret tidligere-
for (String strTemp : arrData){ System.out.println(strTemp); }
Du kan se forskellen mellem løkkerne. Koden er reduceret betydeligt. Desuden er der ingen brug af indekset eller rettere tælleren i løkken. Sørg for, at den datatype, der er erklæret i foreach loop, skal matche datatypen for arrayliste at du gentager.
For hver sløjfe Eksempel:
Her har vi hele klassen, der viser ovenstående forklaring-
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); } } }
Forventet output:
Using conventional For Loop: Alpha Beta Gamma Delta Sigma Using Foreach loop: Alpha Beta Gamma Delta Sigma