For-Every Loop är en annan form av for loop som används för att korsa arrayen. för varje slinga minskar koden avsevärt och det finns ingen användning av indexet eller snarare räknaren i slingan.
Syntax:
For(: ){System.out.println();//Any other operation can be done with this temp variable.}
Låt oss ta exemplet med en strängmatris som du vill itera igen utan att använda några räknare.
Tänk på en strängmatris arrData initialiserad enligt följande:
String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
Även om du kanske känner till metoder som att hitta storleken på matrisen och sedan itera igenom varje element i matrisen med hjälp av den traditionella för loop (räknare, tillstånd och steg), måste vi hitta en mer optimerad metod som inte kommer att använda någon sådan räknare .
Detta är det konventionella tillvägagångssättet för "for" -slingan:
for(int i = 0; i< arrData.length; i++){System.out.println(arrData[i]);}
Du kan se användningen av räknaren och sedan använda den som index för matrisen.
Java ger ett sätt att använda "for" -slingan som kommer att upprepas genom varje element i matrisen.
Här är koden för den array som vi hade deklarerat tidigare-for (String strTemp : arrData){System.out.println(strTemp);}
Du kan se skillnaden mellan öglorna. Koden har minskat avsevärt. Det finns inte heller någon användning av indexet eller snarare räknaren i slingan.
Se till att datatypen som deklareras i foreach-slingan måste matcha datatypen för den array / lista som du itererar.
Här har vi hela klassen som visar ovanstående förklaring-klass UsingForEach {public static void main (String [] args) {Sträng [] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};// Den konventionella metoden att använda for-loopSystem.out.println ("Använda konventionell för loop:");för (int i = 0; i
Produktion:
Using conventional For Loop:AlphaBetaGammaDeltaSigmaUsing Foreach loop:AlphaBetaGammaDeltaSigma