I denne vejledning lærer du om fortsættelseserklæringen og mærket fortsættelseserklæring i Java ved hjælp af eksempler.
Mens du arbejder med sløjfer, vil du nogle gange måske springe nogle udsagn over eller afslutte sløjfen. I sådanne tilfælde, break
og continue
bruges udsagn.
For at lære mere om break
udsagnet, besøg Java break. Her vil vi lære om continue
udsagnet.
Java fortsætter
Den continue
sætning springer den aktuelle iteration af en løkke ( for
, while
, do… while
, osv).
Efter continue
erklæringen flytter programmet til slutningen af sløjfen. Og testudtryk evalueres (opdateringserklæring evalueres i tilfælde af for-loop).
Her er syntaksen for fortsættelseserklæringen.
continue;
Bemærk : Fortsættserklæringen bruges næsten altid i beslutningserklæringer (hvis … ellers erklæring).
Arbejde med Java fortsæt erklæring

Eksempel 1: Java fortsæt-udsagn
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); ) ) )
Output :
1 2 3 4 9 10
I ovenstående program bruger vi for
sløjfen til at udskrive værdien af i i hver iteration. For at vide, hvordan for
loop fungerer, skal du besøge Java for loop. Bemærk erklæringen,
if (i> 5 && i < 9) ( continue; )
Her continue
udføres udsagnet, når værdien af i bliver mere end 4 og mindre end 9 .
Det springer derefter udskriftserklæringen inde i sløjfen. Derfor får vi output med værdierne 5 , 6 , 7 og 8 springet over.
Eksempel 2: Beregn summen af 5 positive tal
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(); ) )
Output :
Indtast nummer 1: 2.2 Indtast nummer 2: 5.6 Indtast nummer 3: 0 Indtast nummer 4: -2.4 Indtast nummer 5: -3 Sum = 7.8
I eksemplet ovenfor har vi brugt for-sløjfen til at udskrive summen af 5 positive tal. Bemærk linjen,
if (number < 0.0) ( continue; )
Her, når brugeren indtaster et negativt tal, continue
udføres udsagnet. Dette springer den aktuelle iteration af sløjfen over og fører programstyringen til opdateringsudtrykket af sløjfen.
Bemærk : For at modtage input fra brugeren har vi brugt Scanner
objektet. Hvis du vil vide mere, skal du besøge Java Scanner.
Java fortsætter med Nested Loop
I tilfælde af indlejrede sløjfer i Java continue
springer udsagnet over den aktuelle iteration af den inderste sløjfe.

Eksempel 3: fortsæt med Nested Loop
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++; ) ) )
Produktion
Ydre sløjfe: 1 indre sløjfe: 1 indre sløjfe: 3 ydre sløjfe: 2 ydre sløjfe: 3
I ovenstående eksempel har vi brugt den nestede while-loop. Bemærk, at vi har brugt continue
udsagnet inde i den indre sløjfe.
if(j == 2) ( j++; continue: )
Her, når værdien af j er 2 , øges værdien af j, og continue
udsagnet udføres.
Dette springer iteration af den indre sløjfe over. Derfor springes teksten Indre sløjfe: 2 over fra output.
Mærket fortsæt erklæring
Indtil nu har vi brugt den umærkede continue
erklæring. Der er dog en anden form for continue
udsagn i Java kendt som mærket fortsæt .
Den inkluderer sløjfemærket sammen med continue
nøgleordet. For eksempel,
continue label;
Her continue
springer udsagnet over den aktuelle iteration af den loop, der er specificeret af etiketten.

Vi kan se, at etiketidentifikatoren specificerer den ydre sløjfe. Læg mærke til brugen af fortsætningen inde i den indre sløjfe.
Her continue
springer udsagnet over den aktuelle iteration af den mærkede sætning (dvs. ydre sløjfe). Derefter går programstyringen til den næste iteration af den mærkede erklæring.
Eksempel 4: mærket fortsat erklæring
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); ) ) ) )
Output :
i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1
I ovenstående eksempel labeled continue
bruges udsagnet til at springe den aktuelle iteration af sløjfen mærket som først over.
if (i==3 || j==2) continue first;
Her kan vi se den yderste for
sløjfe er mærket som først,
first: for (int i = 1; i < 6; ++i) (… )
Derfor for
springes iteration af den ydre sløjfe over, hvis værdien af i er 3 eller værdien af j er 2.
Bemærk : Brug af mærket continue
frarådes ofte, da det gør din kode vanskelig at forstå. Hvis du er i en situation, hvor du skal bruge mærket continue
, skal du omlægge din kode og prøve at løse den på en anden måde for at gøre den mere læselig.