Smyčka Java for-each nebo vylepšená smyčka for je zavedena od J2SE 5.0. Poskytuje alternativní přístup k procházení pole nebo kolekce v Javě. Používá se hlavně k procházení prvků pole nebo kolekce. Výhodou smyčky for-each je, že eliminuje možnost chyb a činí kód čitelnějším. Je známá jako smyčka for-each, protože prochází každý prvek jeden po druhém.
Nevýhodou vylepšené smyčky for je, že nemůže procházet prvky v opačném pořadí. Zde nemáte možnost přeskočit žádný prvek, protože nefunguje na základě indexu. Navíc nemůžete procházet pouze liché nebo sudé prvky.
Pro procházení prvků pole a kolekce se však doporučuje používat smyčku Java for-each, protože kód je čitelný.
Výhody
- Díky tomu je kód čitelnější.
- Eliminuje možnost programových chyb.
Syntax
Syntaxe cyklu Java for-each se skládá z datového_typu s proměnnou následovanou dvojtečkou (:), poté polem nebo kolekcí.
for(data_type variable : array | collection){ //body of for-each loop }
Jak to funguje?
Smyčka Java for-each prochází polem nebo kolekcí až do posledního prvku. Pro každý prvek uloží prvek do proměnné a provede tělo cyklu for-each.
For-each loop Příklad: Procházení prvků pole
//An example of Java for-each loop class ForEachExample1{ public static void main(String args[]){ //declaring an array int arr[]={12,13,14,44}; //traversing the array with for-each loop for(int i:arr){ System.out.println(i); } } }Otestujte to hned
Výstup:
12 12 14 44
Podívejme se na další smyčku Java for-each, kde budeme sčítat prvky.
class ForEachExample1{ public static void main(String args[]){ int arr[]={12,13,14,44}; int total=0; for(int i:arr){ total=total+i; } System.out.println('Total: '+total); } }
Výstup:
Total: 83
Pro každou smyčku Příklad: Procházení prvků kolekce
import java.util.*; class ForEachExample2{ public static void main(String args[]){ //Creating a list of elements ArrayList list=new ArrayList(); list.add('vimal'); list.add('sonoo'); list.add('ratan'); //traversing the list of elements using for-each loop for(String s:list){ System.out.println(s); } } }Otestujte to hned
Výstup:
vimal sonoo ratanstáhněte si tento příklad