Tässä opetusohjelmassa opitaan kuinka käyttää silmukkaa Java-sovelluksessa esimerkkien avulla ja opitaan myös Loopin toiminnasta tietokoneohjelmoinnissa.
Tietokoneohjelmoinnissa silmukoita käytetään toistamaan koodilohko. Esimerkiksi, jos haluat näyttää viestin 100 kertaa, sen sijaan, että kirjoitat saman koodin 100 kertaa, voit käyttää silmukkaa.
Java-käyttöjärjestelmässä on kolmen tyyppisiä silmukoita.
- silmukalle
- samalla silmukka
- tehdä … vaikka silmukka
Tämä opetusohjelma keskittyy for -silmukkaan. Opit muun tyyppisistä silmukoista tulevissa opetusohjelmissa.
Java silmukalle
Java- for
silmukkaa käytetään koodilohkon suorittamiseen tietyn määrän kertoja. for
Silmukan syntaksi on:
for (initialExpression; testExpression; updateExpression) ( // body of the loop )
Tässä,
- InitialExpression alustaa ja / tai julistaa muuttujat ja suorittaa vain kerran.
- Ehto arvioidaan. Jos ehto on
true
,for
silmukan runko suoritetaan. - UpdateExpression päivittää arvon initialExpression .
- Ehto arvioidaan uudelleen. Prosessi jatkuu, kunnes ehto on
false
.
Lisätietoja olosuhteista on Java-relaatio- ja loogisissa operaattoreissa.

Esimerkki 1: Näytä teksti viisi kertaa
// Program to print a text 5 times class Main ( public static void main(String() args) ( int n = 5; // for loop for (int i = 1; i <= n; ++i) ( System.out.println("Java is fun"); ) ) )
Tuotos
Java on hauskaa Java on hauskaa Java on hauskaa Java on hauskaa Java on hauskaa
Näin tämä ohjelma toimii.
Toisto | Vaihteleva | Ehto: i <= n | Toiminta |
---|---|---|---|
1 | i = 1 n = 5 | true | Java on hauskaa on painettu. i korotetaan arvoon 2 . |
2. | i = 2 n = 5 | true | Java on hauskaa on painettu. i korotetaan arvoon 3 . |
3. | i = 3 n = 5 | true | Java on hauskaa on painettu. i korotetaan arvoon 4 . |
4. päivä | i = 4 n = 5 | true | Java on hauskaa on painettu. i korotetaan arvoon 5 . |
5. | i = 5 n = 5 | true | Java on hauskaa on painettu. i korotetaan arvoon 6 . |
6. | i = 6 n = 5 | false | Silmukka on päättynyt. |
Esimerkki 2: Näytä numerot 1-5
// Program to print numbers from 1 to 5 class Main ( public static void main(String() args) ( int n = 5; // for loop for (int i = 1; i <= n; ++i) ( System.out.println(i); ) ) )
Tuotos
1 2 3 4 5
Näin ohjelma toimii.
Toisto | Vaihteleva | Ehto: i <= n | Toiminta |
---|---|---|---|
1 | i = 1 n = 5 | true | 1 on tulostettu. i korotetaan arvoon 2 . |
2. | i = 2 n = 5 | true | 2 on tulostettu. i korotetaan arvoon 3 . |
3. | i = 3 n = 5 | true | 3 on tulostettu. i korotetaan arvoon 4 . |
4. päivä | i = 4 n = 5 | true | 4 on tulostettu. i korotetaan arvoon 5 . |
5. | i = 5 n = 5 | true | 5 on tulostettu. i korotetaan arvoon 6 . |
6. | i = 6 n = 5 | false | Silmukka on päättynyt. |
Esimerkki 3: Näyttää n luonnollisen numeron summa
// Program to find the sum of natural numbers from 1 to 1000. class Main ( public static void main(String() args) ( int sum = 0; int n = 1000; // for loop for (int i = 1; i <= n; ++i) ( // body inside for loop sum += i; // sum = sum + i ) System.out.println("Sum = " + sum); ) )
Tuotos :
Summa = 500500
Tässä summan arvo on aluksi 0 . Sitten for-silmukka toistetaan i = 1 to 1000
. Jokaisessa iteraatiossa i lisätään summaan ja sen arvoa lisätään yhdellä .
Kun i: stä tulee 1001 , testiehto on false
ja summa on yhtä suuri kuin 0 + 1 + 2 +… . + 1000
.
Yllä oleva ohjelma luonnollisten lukujen summan lisäämiseksi voidaan kirjoittaa myös muodossa
// Program to find the sum of natural numbers from 1 to 1000. class Main ( public static void main(String() args) ( int sum = 0; int n = 1000; // for loop for (int i = n; i>= 1; --i) ( // body inside for loop sum += i; // sum = sum + i ) System.out.println("Sum = " + sum); ) )
Tämän ohjelman tulos on sama kuin esimerkissä 3 .
Java jokaiselle silmukalle
Java for -silmukalla on vaihtoehtoinen syntakse, jonka avulla on helppo toistaa taulukoiden ja kokoelmien kautta. Esimerkiksi,
// print array elements class Main ( public static void main(String() args) ( // create an array int() numbers = (3, 7, 5, -5); // iterating through the array for (int number: numbers) ( System.out.println(number); ) ) )
Tuotos
3 7 5-5
Tässä olemme käyttäneet for-each -silmukkaa tulostaaksesi numeroryhmän jokaisen elementin yksi kerrallaan.
Silmukan ensimmäisessä iteroinnissa numero on 3, numero on 7 toisessa iteraatiossa ja niin edelleen.
Lisätietoja on Java for-Loop -sivulla.
Java Infinite -silmukka
Jos asetamme testi ilmaisua siten, että se ei koskaan evaluoituu false
The for
silmukka jatkuu ikuisesti. Tätä kutsutaan loputtomaksi silmukalle. Esimerkiksi,
// Infinite for Loop class Infinite ( public static void main(String() args) ( int sum = 0; for (int i = 1; i <= 10; --i) ( System.out.println("Hello"); ) ) )
Tässä testilauseketta i <= 10
ei koskaan tulosteta, false
ja Hello
se tulostetaan toistuvasti, kunnes muisti loppuu.