Java for-each cilpa vai uzlabotā cilpa ir ieviesta kopš J2SE 5.0. Tā nodrošina alternatīvu pieeju Java masīva vai kolekcijas šķērsošanai. To galvenokārt izmanto, lai šķērsotu masīvu vai kolekcijas elementus. Katras cilpas priekšrocība ir tā, ka tā novērš kļūdu iespējamību un padara kodu lasāmāku. To sauc par for-each cilpu, jo tā šķērso katru elementu pa vienam.
Uzlabotās for cilpas trūkums ir tāds, ka tā nevar šķērsot elementus apgrieztā secībā. Šeit jums nav iespējas izlaist nevienu elementu, jo tas nedarbojas, pamatojoties uz indeksu. Turklāt jūs nevarat šķērsot tikai nepāra vai pāra elementus.
Taču ieteicams izmantot Java katrai cilpai, lai šķērsotu masīva un kolekcijas elementus, jo tas padara kodu lasāmu.
Priekšrocības
- Tas padara kodu lasāmāku.
- Tas novērš programmēšanas kļūdu iespējamību.
Sintakse
Java sintakse katrai cilpai sastāv no data_type ar mainīgo, kam seko kols (:), pēc tam masīvs vai kolekcija.
for(data_type variable : array | collection){ //body of for-each loop }
Kā tas strādā?
Java for-each cilpa šķērso masīvu vai kolekciju līdz pēdējam elementam. Katram elementam tas saglabā elementu mainīgajā un izpilda katras cilpas pamattekstu.
Katrai cilpai Piemērs: masīva elementu šķērsošana
//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); } } }Izmēģiniet to tagad
Izvade:
12 12 14 44
Apskatīsim vēl vienu Java cilpu, kurā mēs apkoposim elementus.
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); } }
Izvade:
Total: 83
Katrai cilpai Piemērs: kolekcijas elementu šķērsošana
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); } } }Izmēģiniet to tagad
Izvade:
vimal sonoo ratanlejupielādējiet šo piemēru