For-each Loop je další forma smyčky for používaná k procházení pole. smyčka for-each významně snižuje kód a ve smyčce se nepoužívá index nebo spíše čítač.
Syntax:
For(: ){System.out.println();//Any other operation can be done with this temp variable.}
Vezměme si příklad pomocí pole String, které chcete iterovat bez použití jakýchkoli čítačů.
Zvažte Stringové pole arrData inicializované takto:
String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
I když možná znáte metody, jako je hledání velikosti pole a následné iterace každým prvkem pole pomocí tradiční smyčky for (čítač, podmínka a přírůstek), musíme najít optimalizovanější přístup, který žádný takový čítač nebude .
Toto je konvenční přístup smyčky „pro“:
for(int i = 0; i< arrData.length; i++){System.out.println(arrData[i]);}
Můžete vidět použití čítače a poté jej použít jako index pro pole.
Java poskytuje způsob, jak použít smyčku „pro“, která bude iterovat každým prvkem pole.
Zde je kód pole, které jsme deklarovali dříve -for (String strTemp : arrData){System.out.println(strTemp);}
Můžete vidět rozdíl mezi smyčkami. Kód se výrazně snížil. Ve smyčce také není použit index nebo spíše čítač.
Zajistěte, aby se datový typ deklarovaný ve smyčce foreach shodoval s datovým typem pole / seznamu, který iterujete.
Tady máme celou třídu zobrazující výše uvedené vysvětlení-třída UsingForEach {public static void main (String [] args) {Řetězec [] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};// Konvenční přístup využívající smyčku forSystem.out.println ("Použití konvenčních pro smyčku:");for (int i = 0; iVýstup:
Using conventional For Loop:AlphaBetaGammaDeltaSigmaUsing Foreach loop:AlphaBetaGammaDeltaSigma