In questo tutorial, imparerai a conoscere l'istruzione continue e l'istruzione continue etichettata in Java con l'aiuto di esempi.
Mentre lavori con i loop, a volte potresti voler saltare alcune istruzioni o terminare il loop. In questi casi, break
e continue
sono utilizzati dichiarazioni.
Per conoscere la break
dichiarazione, visita Java break. Qui, impareremo la continue
dichiarazione.
Java continua
La continue
dichiarazione salta l'iterazione corrente di un ciclo ( for
, while
, do… while
, ecc).
Dopo l' continue
istruzione, il programma si sposta alla fine del ciclo. Inoltre, viene valutata l'espressione di test (l'istruzione update viene valutata nel caso del ciclo for).
Ecco la sintassi dell'istruzione continue.
continue;
Nota : l'istruzione continue è quasi sempre utilizzata nelle dichiarazioni decisionali (if… else Statement).
Funzionamento dell'istruzione continue di Java

Esempio 1: istruzione continue Java
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); ) ) )
Uscita :
1 2 3 4 9 10
Nel programma sopra, stiamo usando il for
ciclo per stampare il valore di i in ogni iterazione. Per sapere come for
funziona il loop, visita Java for loop. Notare la dichiarazione,
if (i> 5 && i < 9) ( continue; )
Qui, l' continue
istruzione viene eseguita quando il valore di i diventa maggiore di 4 e minore di 9 .
Quindi salta l'istruzione print all'interno del ciclo. Quindi otteniamo l'output con i valori 5 , 6 , 7 e 8 saltato.
Esempio 2: calcola la somma di 5 numeri positivi
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(); ) )
Uscita :
Immettere il numero 1: 2.2 Immettere il numero 2: 5.6 Immettere il numero 3: 0 Immettere il numero 4: -2.4 Immettere il numero 5: -3 Somma = 7,8
Nell'esempio sopra, abbiamo usato il ciclo for per stampare la somma di 5 numeri positivi. Notare la linea,
if (number < 0.0) ( continue; )
Qui, quando l'utente inserisce un numero negativo, l' continue
istruzione viene eseguita. Ciò salta l'iterazione corrente del ciclo e porta il controllo del programma all'espressione di aggiornamento del ciclo.
Nota : per ricevere input dall'utente, abbiamo utilizzato l' Scanner
oggetto. Per saperne di più, visita Java Scanner.
Java continua con Nested Loop
Nel caso di cicli annidati in Java, l' continue
istruzione salta l'iterazione corrente del ciclo più interno.

Esempio 3: continua con 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++; ) ) )
Produzione
Anello esterno: 1 Anello interno: 1 Anello interno: 3 Anello esterno: 2 Anello esterno: 3
Nell'esempio sopra, abbiamo usato il ciclo while annidato. Nota che abbiamo usato l' continue
istruzione all'interno del ciclo interno.
if(j == 2) ( j++; continue: )
Qui, quando il valore di j è 2 , il valore di j viene aumentato e l' continue
istruzione viene eseguita.
Questo salta l'iterazione del ciclo interno. Quindi, il testo Inner Loop: 2 viene saltato dall'output.
Istruzione continue etichettata
Fino ad ora, abbiamo utilizzato l' continue
affermazione senza etichetta . Tuttavia, esiste un'altra forma di continue
istruzione in Java nota come continue etichettata .
Include l'etichetta del ciclo insieme alla continue
parola chiave. Per esempio,
continue label;
Qui, l' continue
istruzione salta l'iterazione corrente del ciclo specificato da label.

Possiamo vedere che l'identificatore dell'etichetta specifica il ciclo esterno. Notare l'uso di continue all'interno del ciclo interno.
Qui, l' continue
istruzione salta l'iterazione corrente dell'istruzione etichettata (cioè il ciclo esterno). Quindi, il controllo del programma passa all'iterazione successiva dell'istruzione etichettata.
Esempio 4: istruzione continue etichettata
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); ) ) ) )
Uscita :
i = 1; j = 1 io = 2; j = 1 io = 4; j = 1 io = 5; j = 1
Nell'esempio precedente, l' labeled continue
istruzione viene utilizzata per saltare l'iterazione corrente del ciclo etichettato come primo.
if (i==3 || j==2) continue first;
Qui, possiamo vedere che il for
ciclo più esterno è etichettato come primo,
first: for (int i = 1; i < 6; ++i) (… )
Quindi, l'iterazione del for
ciclo esterno viene saltata se il valore di i è 3 o il valore di j è 2.
Nota : l'uso di labeled continue
è spesso sconsigliato poiché rende il codice difficile da capire. Se ti trovi in una situazione in cui devi usare labeled continue
, rifattorizza il tuo codice e prova a risolverlo in un modo diverso per renderlo più leggibile.