continue con etichetta
Continui un ciclo esterno
continue con etichetta è una lezione Java Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Java Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Java Academy include 4 lezioni in totale.
Continuare un ciclo esterno
Un semplice continue riavvia solo il ciclo interno. A volte, invece, si desidera passare all'iterazione successiva del ciclo esterno.
Per questo Java offre un continue con etichetta.
Questo costrutto associa un'etichetta di ciclo alla parola chiave continue per controllare quale ciclo deve avanzare.
Sintassi del continue con etichetta
La forma è continue label;, dove l'etichetta identifica un ciclo che lo contiene.
Invece di far avanzare il ciclo interno, passa all'iterazione successiva del ciclo indicato dall'etichetta.
Tutto ciò che resta da eseguire nel ciclo interno per quell'iterazione viene saltato.
continue outer; // jump to next iteration of 'outer'Un primo esempio
Qui, quando col è uguale a 2, usiamo continue sul ciclo esterno.
In questo modo abbandoniamo il resto del ciclo interno e passiamo subito alla riga successiva.
public class Main {
public static void main(String[] args) {
outer:
for (int row = 1; row <= 3; row++) {
for (int col = 1; col <= 3; col++) {
if (col == 2) {
continue outer;
}
System.out.println("row " + row + ", col " + col);
}
}
}
}Lettura dell'output
Ogni riga ha stampato solo col 1. Quando col ha raggiunto 2, continue outer è passato direttamente alla riga successiva.
Le colonne 2 e 3 non sono mai state stampate per nessuna riga.
Il ciclo interno è ripartito da col 1 a ogni nuova riga.
continue e continue label
Confronti il risultato con un continue normale. Saltarebbe solo col 2 e stamperebbe comunque col 3.
Esegua questo codice e osservi che col 1 e col 3 compaiono entrambi per ogni riga.
public class Main {
public static void main(String[] args) {
for (int row = 1; row <= 3; row++) {
for (int col = 1; col <= 3; col++) {
if (col == 2) {
continue;
}
System.out.println("row " + row + ", col " + col);
}
}
}
}La differenza fondamentale
Un continue normale salta solo l'iterazione interna corrente, quindi il ciclo interno continua.
continue outer con etichetta abbandona l'intero ciclo interno e riavvia l'iterazione successiva del ciclo esterno.
Quella singola etichetta modifica la quantità di codice che viene saltata.
Saltare un'intera riga
Il continue con etichetta è utile quando un valore non valido deve rendere inutile il resto dell'elaborazione interna.
Qui, se un numero qualsiasi in una riga è negativo, saltiamo il resto del lavoro di quella riga e passiamo oltre.
public class Main {
public static void main(String[] args) {
int[][] data = {{1, 2, 3}, {4, -1, 6}, {7, 8, 9}};
rows:
for (int r = 0; r < data.length; r++) {
int sum = 0;
for (int c = 0; c < data[r].length; c++) {
if (data[r][c] < 0) {
System.out.println("Row " + r + " skipped");
continue rows;
}
sum += data[r][c];
}
System.out.println("Row " + r + " sum = " + sum);
}
}
}Analisi dell'esempio
Le righe 0 e 2 hanno stampato le rispettive somme. La riga 1 ha trovato un valore negativo, ha stampato "Row 1 skipped" ed è passata alla riga successiva.
È importante notare che la riga relativa alla somma della riga 1 non è mai stata eseguita, perché il continue con etichetta l'ha saltata.
Filtraggio di coppie
Un altro uso consiste nel saltare un intero elemento esterno non appena una condizione interna non è soddisfatta.
Questo ciclo stampa delle coppie, ma salta ogni i il cui prodotto con j supererebbe 6.
public class Main {
public static void main(String[] args) {
loopI:
for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 3; j++) {
if (i * j > 6) {
continue loopI;
}
System.out.println(i + " x " + j + " = " + (i * j));
}
}
}
}Nomi e posizione delle etichette
Il ciclo etichettato deve contenere l'istruzione continue. Non è possibile usare continue verso un'etichetta che non si trova sopra di essa.
Scelga nomi descrittivi come rows o loopI, così chi legge sa quale ciclo avanza.
Un'etichetta chiara è già documentazione.
Quando è utile e quando è controproducente
Il continue con etichetta è utile quando una condizione deve rendere inutile il resto di un'iterazione interna e consentire di proseguire.
Un uso eccessivo delle etichette, però, rende difficile seguire il flusso. Se un continue normale o un return anticipato dal metodo risultano più semplici da leggere, li preferisca.
Usi le etichette solo quando chiariscono davvero il codice.
Verifica rapida
Preveda l'effetto di un continue con etichetta.
Riepilogo
continue label; salta il resto del ciclo interno e porta il ciclo esterno indicato dall'etichetta alla sua iterazione successiva.
È diverso da un continue normale, che salta solo un'iterazione interna. Usi le etichette quando rendono più chiara la logica con più cicli, non soltanto quando la accorciano.
Domande Frequenti
La lezione «continue con etichetta» è gratuita?
Sì — il testo completo di «continue con etichetta» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Java Academy, passa a CoddyKit PRO. Il corso Java Academy include 4 lezioni in totale.
Cosa imparerò in «continue con etichetta»?
Continui un ciclo esterno Eserciti Java Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Java Academy?
Non è richiesta alcuna esperienza precedente. Java Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «continue con etichetta»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Java Academy?
Sì. Ogni lezione Java Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- break e continue
- break con etichetta
- continue con etichetta
- Evitare il flusso a spaghetti