Java jokaiselle silmukalle (esimerkkejä)

Tässä opetusohjelmassa opitaan Java for for -silmukasta ja sen eroista for loop -silmukalle esimerkkien avulla.

Java -ohjelmassa kutakin silmukkaa käytetään iteroimaan taulukoiden ja kokoelmien elementtien (kuten ArrayList) kautta. Sitä kutsutaan myös parannetuksi silmukalle.

jokaiselle Loop Sytnaxille

Jokaisen silmukan Java - syntaksi on:

 for(dataType item : array) (… )

Tässä,

  • array - taulukko tai kokoelma
  • item - kukin taulukon / kokoelman kohde on osoitettu tälle muuttujalle
  • dataType - taulukon / kokoelman tietotyyppi

Esimerkki 1: Tulosta taulukon elementit

 // 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); ) ) )

Tuotos

 3 9 5-5 

Tässä olemme käyttäneet for-each -silmukkaa tulostaaksesi numeroryhmän jokaisen elementin yksi kerrallaan.

  • Ensimmäisessä iteraatiossa alkio on 3.
  • Toisessa iteraatiossa alkio on 9.
  • Kolmannessa iteraatiossa alkio on 5.
  • Neljännessä iteraatiossa alkio on -5.

Esimerkki 2: Taulukkoelementtien 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); ) )

Tuotos :

 Summa = 19

Yllä olevassa ohjelmassa for eachsilmukan suoritus näyttää:

Toisto Muuttujat
1 luku = 3
summa = 0 + 3 = 3
2 luku = 4
summa = 3 + 4 = 7
3 luku = 5
summa = 7 + 5 = 12
4 luku = -5
summa = 12 + (-5) = 7
5 luku = 0
summa = 7 + 0 = 7
6 luku = 12
summa = 7 + 12 = 19

Kuten näemme, olemme lisänneet numeroryhmän jokaisen elementin summa-muuttujaan silmukan jokaisessa iteroinnissa.

silmukalle Vs jokaiselle silmukalle

Katsotaanpa, kuinka for-eachsilmukka eroaa tavallisesta Java for loop -silmukasta.

1. Käyttäminen silmukalle

 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)); ) ) )

Tuotos :

 aeiou

2. Käytä jokaiselle silmukalle

 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); ) ) )

Tuotos :

 aeiou

Tässä molempien ohjelmien lähtö on sama. Kuitenkin for-jokainen silmukka on helpompi kirjoittaa ja ymmärtää.

Siksi jokaiselle silmukka on edullinen for- silmukalle matriisien ja kokoelmien kanssa työskenneltäessä.

Mielenkiintoisia artikkeleita...