Selles õpetuses saate näidete abil teada Java-i jätkamise avalduse ja sildiga jätkamise avalduse kohta.
Silmustega töötamise ajal võiksite vahel mõne lause vahele jätta või tsükli lõpetada. Sellistel juhtudel break
ja continue
avaldused kasutatakse.
break
Avalduse kohta lisateabe saamiseks külastage Java break'i. Siit saame teada continue
avalduse kohta.
Java jätkab
continue
Avaldus ignoreerib praegune iteratsiooni silmus ( for
, while
, do… while
jne).
Pärast continue
lauset liigub programm tsükli lõppu. Hinnatakse ka testi väljendit (for loopi puhul hinnatakse värskenduslauset).
Siin on jätkulause süntaks.
continue;
Märkus : jätkulauset kasutatakse peaaegu alati otsuste tegemisel (kui… muul juhul).
Java jätkamise avalduse töö

Näide 1: Java jätkamise lause
class Main ( public static void main(String() args) ( // for loop for (int i = 1; i <= 10; ++i) ( // if value of i is between 4 and 9 // continue is executed if (i> 4 && i < 9) ( continue; ) System.out.println(i); ) ) )
Väljund :
1 2 3 4 9 10
Ülaltoodud programmis kasutame for
silmust i korduse i väärtuse printimiseks. Kui soovite teada, kuidas for
loop töötab, külastage Java for loopi. Pange tähele avaldust,
if (i> 5 && i < 9) ( continue; )
Siin continue
täidetakse lause siis, kui i väärtus on suurem kui 4 ja väiksem kui 9 .
Seejärel jätab see printimisavalduse silmuse sees vahele. Seega saame väljundi väärtustega 5 , 6 , 7 ja 8 vahele.
Näide 2: arvutage 5 positiivse arvu summa
import java.util.Scanner; class Main ( public static void main(String() args) ( Double number, sum = 0.0; // create an object of Scanner Scanner input = new Scanner(System.in); for (int i = 1; i < 6; ++i) ( System.out.print("Enter number " + i + " : "); // takes input from the user number = input.nextDouble(); // if number is negative // continue statement is executed if (number <= 0.0) ( continue; ) sum += number; ) System.out.println("Sum = " + sum); input.close(); ) )
Väljund :
Sisestage number 1: 2,2 Sisestage number 2: 5,6 Sisestage number 3: 0 Sisestage number 4: -2,4 Sisestage number 5: -3 Summa = 7,8
Eespool toodud näites oleme 5 positiivse arvu summa printimiseks kasutanud for loop-i. Pange tähele joont,
if (number < 0.0) ( continue; )
Siin, kui kasutaja sisestab negatiivse numbri, täidetakse continue
lause. See jätab silmuse praeguse iteratsiooni vahele ja viib programmi juhtimise tsükli värskendusavalduseni.
Märkus . Kasutaja sisendi saamiseks kasutasime Scanner
objekti. Lisateabe saamiseks külastage Java Scannerit.
Java jätkab pesastatud aasaga
Java sisestatud silmuste korral continue
jätab lause sisemise silmuse praeguse iteratsiooni vahele.

Näide 3: jätkake pesastatud aasaga
class Main ( public static void main(String() args) ( int i = 1, j = 1; // outer loop while (i <= 3) ( System.out.println("Outer Loop: " + i); // inner loop while(j <= 3) ( if(j == 2) ( j++; continue; ) System.out.println("Inner Loop: " + j); j++; ) i++; ) ) )
Väljund
Välisring: 1 sisemine silmus: 1 sisemine silmus: 3 välimine silmus: 2 välimine silmus: 3
Ülaltoodud näites oleme kasutanud pesastatud while-silmust. Pange tähele, et oleme kasutanud continue
lauset sisemise silmuse sees.
if(j == 2) ( j++; continue: )
Siin, kui j väärtus on 2 , suurendatakse j väärtust ja continue
lause täidetakse.
See jätab sisemise silmuse iteratsiooni vahele. Seega jäetakse tekst Inner Loop: 2 väljundist vahele.
Märgistatud jätkamise avaldus
Siiani oleme kasutanud sildistamata continue
lauset. Siiski on continue
Java-s veel üks avaldusevorm, mida nimetatakse sildistatud jätkamiseks .
See sisaldab silmuse silti koos continue
märksõnaga. Näiteks,
continue label;
Siin continue
jätab lause silti määratud silmusest praeguse iteratsiooni vahele.

Näeme, et sildi identifikaator määrab välise silmuse. Pange tähele jätkamise kasutamist sisemise silmuse sees.
Siin jätab continue
lause sildistatud avalduse (st välise silmuse) praeguse iteratsiooni vahele. Seejärel läheb programmi juhtelement sildistatud lause järgmisele iteratsioonile.
Näide 4: silt Jätka avaldus
class Main ( public static void main(String() args) ( // outer loop is labeled as first first: for (int i = 1; i < 6; ++i) ( // inner loop for (int j = 1; j < 5; ++j) ( if (i == 3 || j == 2) // skips the current iteration of outer loop continue first; System.out.println("i = " + i + "; j = " + j); ) ) ) )
Väljund :
i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1
Ülaltoodud näites kasutatakse labeled continue
lauset esimesena märgitud silmuse praeguse iteratsiooni vahele jätmiseks.
if (i==3 || j==2) continue first;
Siin näeme, et äärmine for
silmus on märgistatud esimesena,
first: for (int i = 1; i < 6; ++i) (… )
Seega for
jäetakse välise silmuse iteratsioon vahele, kui i väärtus on 3 või j väärtus on 2.
Märkus : sildistatud kasutamist continue
ei soovitata sageli kasutada, kuna see muudab teie koodi raskesti mõistetavaks. Kui teil on olukord, kus peate kasutama silte continue
, muutke oma kood ümber ja proovige see muudmoodi lahendada, et see oleks paremini loetav.