Java continue verklaring (met voorbeelden)

In deze tutorial leer je met behulp van voorbeelden over de continue instructie en de gelabelde continue instructie in Java.

Als u met lussen werkt, wilt u soms enkele instructies overslaan of de lus beëindigen. In dergelijke gevallen worden breaken continueverklaringen gebruikt.

Ga breaknaar Java break voor meer informatie over de verklaring. Hier leren we over de continueverklaring.

Java gaat door

De continueinstructie slaat de huidige iteratie van de lus ( for, while, do… while, enz).

Na de continueinstructie gaat het programma naar het einde van de lus. En testuitdrukking wordt geëvalueerd (update-instructie wordt geëvalueerd in het geval van de for-lus).

Hier is de syntaxis van de continue instructie.

 continue;

Opmerking : de continue verklaring wordt bijna altijd gebruikt in besluitvormingsverklaringen (if… else-verklaring).

Werking van Java vervolgverklaring

Werking van Java vervolg Statement

Voorbeeld 1: Java continue instructie

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

Uitgang :

 1 2 3 4 9 10

In het bovenstaande programma gebruiken we de forlus om de waarde van i in elke iteratie af te drukken. Ga fornaar Java for loop om te weten hoe loop werkt. Let op de verklaring,

 if (i> 5 && i < 9) ( continue; )

Hier wordt de continueinstructie uitgevoerd wanneer de waarde van i groter wordt dan 4 en kleiner dan 9 .

Vervolgens wordt de afdrukinstructie binnen de lus overgeslagen. Daarom krijgen we de uitvoer met waarden 5 , 6 , 7 en 8 overgeslagen.

Voorbeeld 2: Bereken de som van 5 positieve getallen

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

Uitgang :

 Voer nummer 1 in: 2.2 Voer nummer 2 in: 5.6 Voer nummer 3 in: 0 Voer nummer 4 in: -2.4 Voer nummer 5 in: -3 Som = 7.8

In het bovenstaande voorbeeld hebben we de for-lus gebruikt om de som van 5 positieve getallen af ​​te drukken. Let op de lijn,

 if (number < 0.0) ( continue; )

Hier, wanneer de gebruiker een negatief getal invoert, wordt de continueinstructie uitgevoerd. Dit slaat de huidige iteratie van de lus over en brengt de programmabesturing naar de update-uitdrukking van de lus.

Opmerking : om input van de gebruiker te krijgen, hebben we het Scannerobject gebruikt. Bezoek Java Scanner voor meer informatie.

Java gaat verder met Nested Loop

In het geval van geneste lussen in Java, continueslaat de instructie de huidige iteratie van de binnenste lus over.

Werking van Java vervolgverklaring met geneste lussen

Voorbeeld 3: ga verder met geneste lus

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

Uitvoer

 Buitenste lus: 1 binnenste lus: 1 binnenste lus: 3 buitenste lus: 2 buitenste lus: 3

In het bovenstaande voorbeeld hebben we de geneste while-lus gebruikt. Merk op dat we de continueinstructie in de binnenste lus hebben gebruikt .

 if(j == 2) ( j++; continue: )

Hier, wanneer de waarde van j 2 is , wordt de waarde van j verhoogd en wordt de continueinstructie uitgevoerd.

Dit slaat de iteratie van de binnenste lus over. Daarom wordt de tekst Inner Loop: 2 overgeslagen uit de uitvoer.

Gelabeld vervolg Statement

Tot nu toe hebben we de niet-gelabelde continueverklaring gebruikt. Er is echter een andere vorm van continueinstructie in Java die bekend staat als gelabeld doorgaan .

Het bevat het label van de lus samen met het continuetrefwoord. Bijvoorbeeld,

 continue label;

Hier continueslaat de instructie de huidige iteratie van de lus over die is gespecificeerd door label.

Werking van de Java met het label continue Statement

We kunnen zien dat de label-ID de buitenste lus aangeeft. Let op het gebruik van het doorgaan in de binnenste lus.

Hier continueslaat de instructie de huidige iteratie van de gelabelde instructie over (dwz buitenste lus). Vervolgens gaat de programmabesturing naar de volgende iteratie van de gelabelde instructie.

Voorbeeld 4: gelabeld vervolg Statement

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

Uitgang :

i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1

In het bovenstaande voorbeeld wordt de labeled continueinstructie gebruikt om de huidige iteratie van de lus met het label eerste over te slaan.

 if (i==3 || j==2) continue first;

Hier kunnen we zien dat de buitenste forlus als eerste wordt aangeduid,

 first: for (int i = 1; i < 6; ++i) (… )

Daarom wordt de iteratie van de buitenste forlus overgeslagen als de waarde van i 3 is of de waarde van j 2 is.

Opmerking : het gebruik van gelabeld continuewordt vaak afgeraden omdat het uw code moeilijk te begrijpen maakt. Als u zich in een situatie bevindt waarin u gelabeld moet gebruiken continue, refactureer dan uw code en probeer het op een andere manier op te lossen om het leesbaarder te maken.

Interessante artikelen...