Šajā apmācībā mēs uzzināsim par Java katram ciklam un tā atšķirību ar for loop, izmantojot piemērus.
Java valodā katra cilpa tiek izmantota, lai atkārtotu masīvu un kolekciju elementus (piemēram, ArrayList). Tas ir arī pazīstams kā uzlabots cilpa.
katram Loop Sytnax
Katras cilpas Java sintakse ir šāda:
for(dataType item : array) (… )
Šeit,
- masīvs - masīvs vai kolekcija
- vienums - katrs masīva / kolekcijas vienums tiek piešķirts šim mainīgajam
- dataType - masīva / kolekcijas datu tips
1. piemērs: Drukāt masīva elementus
// print array elements class Main ( public static void main(String() args) ( // create an array int() numbers = (3, 9, 5, -5); // for each loop for (int number: numbers) ( System.out.println(number); ) ) )
Rezultāts
3 9 5 -5
Šeit mēs esam izmantojuši cilpu “ for-each”, lai izdrukātu katru skaitļu masīva elementu pa vienam.
- Pirmajā atkārtojumā vienums būs 3.
- Otrajā atkārtojumā vienums būs 9.
- Trešajā atkārtojumā vienums būs 5.
- Ceturtajā atkārtojumā vienums būs -5.
2. piemērs: Masīva elementu summa
// Calculate the sum of all elements of an array class Main ( public static void main(String() args) ( // an array of numbers int() numbers = (3, 4, 5, -5, 0, 12); int sum = 0; // iterating through each element of the array for (int number: numbers) ( sum += number; ) System.out.println("Sum = " + sum); ) )
Izeja :
Summa = 19
Iepriekš minētajā programmā for each
cilpas izpilde izskatās šādi:
Atkārtojums | Mainīgie |
---|---|
1 | skaitlis = 3 summa = 0 + 3 = 3 |
2 | skaitlis = 4 summa = 3 + 4 = 7 |
3 | skaitlis = 5 summa = 7 + 5 = 12 |
4 | skaitlis = -5 summa = 12 + (-5) = 7 |
5 | skaitlis = 0 summa = 7 + 0 = 7 |
6 | skaitlis = 12 summa = 7 + 12 = 19 |
Kā redzam, katrā skaitļa masīva elementā esam pievienojuši mainīgajam summai katrā cilpas atkārtojumā.
cilpai Vs katrai cilpai
Apskatīsim, kā for-each
cilpa atšķiras no parastās Java for loop.
1. Izmantojot cilpu
class Main ( public static void main(String() args) ( char() vowels = ('a', 'e', 'i', 'o', 'u'); // iterating through an array using a for loop for (int i = 0; i < vowels.length; ++ i) ( System.out.println(vowels(i)); ) ) )
Izeja :
patskaņi
2. Izmantojot katru cilpu
class Main ( public static void main(String() args) ( char() vowels = ('a', 'e', 'i', 'o', 'u'); // iterating through an array using the for-each loop for (char item: vowels) ( System.out.println(item); ) ) )
Izeja :
patskaņi
Šeit abu programmu izlaide ir vienāda. Tomēr par katru cilpu ir vieglāk rakstīt un saprast.
Tāpēc , strādājot ar masīviem un kolekcijām, priekšroka tiek dota katrai cilnei, nevis cilnei for .