Java pre každú slučku | Enhanced For Loop
Slučka Java for-each alebo vylepšená slučka for je zavedená od verzie J2SE 5.0. Poskytuje alternatívny prístup na prechádzanie poľa alebo kolekcie v jazyku Java. Používa sa hlavne na prechádzanie prvkov poľa alebo kolekcie. Výhodou cyklu for-each je, že eliminuje možnosť chýb a robí kód čitateľnejším. Je známa ako slučka for-each, pretože prechádza každým prvkom jeden po druhom.
Nevýhodou vylepšenej slučky for je, že nemôže prechádzať prvkami v opačnom poradí. Tu nemáte možnosť preskočiť žiadny prvok, pretože nefunguje na základe indexu. Navyše nemôžete prechádzať iba párnymi alebo nepárnymi prvkami.
Odporúča sa však použiť slučku Java for-each na prechádzanie prvkami poľa a kolekcie, pretože kód je čitateľný.
Výhody
- Vďaka tomu je kód čitateľnejší.
- Eliminuje možnosť programovacích chýb.
Syntax
Syntax cyklu Java for-each pozostáva z data_type s premennou, za ktorou nasleduje dvojbodka (:), potom pole alebo kolekcia.
for(data_type variable : array | collection){ //body of for-each loop } Ako to funguje?
Slučka Java for-each prechádza poľom alebo kolekciou až po posledný prvok. Pre každý prvok uloží prvok do premennej a vykoná telo cyklu for-each.
Pre každú slučku Príklad: Prechádzanie prvkami poľa
//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); } } } Vyskúšajte to Výkon:
12 12 14 44
Pozrime sa na ďalšiu slučku Java for-each, kde spočítame 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ýkon:
Total: 83
Pre každú slučku Príklad: Prechádzanie prvkami kolekcie
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); } } } Vyskúšajte to Výkon:
vimal sonoo ratanstiahnite si tento príklad