Il ciclo do-while in Java: come funziona

Il ciclo do-while in Java ti permette di eseguire le istruzioni programmate fino al raggiungimento di una condizione di interruzione definita. È anche possibile combinare questo ciclo con altre funzioni.

Che cos’è un ciclo do-while?

Il ciclo do-while è utilizzato in Java per eseguire un’istruzione e ripeterla finché è soddisfatta una condizione di interruzione definita, ossia finché rimane “true” (vera). La maggior parte dei linguaggi di programmazione dispone di cicli simili che sono utilizzati per eseguire più volte determinati blocchi di codice. È anche possibile combinare questo ciclo con altre funzioni. In Java, il ciclo do-while è una variante del consueto ciclo while.

La sintassi del ciclo do-while in Java

La sintassi del ciclo do-while in Java si presenta sempre nel modo seguente:

do {
	//Istruzioni
}
while(requisito);
java

Il ciclo inizia quindi con la parola chiave “do”. A seguire sono indicate le istruzioni o l’istruzione che il programma deve eseguire. Dopo la parentesi si trova la seconda parola chiave “while”, che inizializza la condizione di interruzione. Questa condizione è sempre formulata come espressione booleana e può essere quindi “true” (vera) o “false” (falsa) nella logica del programma. Un esempio pratico e ben noto di espressione di questo tipo è quello di una variabile numerica che permette di controllare la frequenza di ripetizione dell’esecuzione.

Il tuo web hosting come mai prima d'ora
  • Certificato SSL e protezione DDoS
  • Velocità, flessibilità e scalabilità
  • Dominio e consulente personale
  • 1 anno gratis del gestionale di fatturazione elettronica FlexTax

Funzionamento del ciclo

Se ora fai partire il ciclo do-while in Java, il programma prende in considerazione le istruzioni scritte nel corpo del ciclo e le esegue. Una volta completato, il programma verifica la condizione di interruzione. Se è “true” (ossia non ancora soddisfatta), il ciclo riparte dall’inizio e ripete tutte le istruzioni fino a un nuovo controllo. Non appena la condizione di interruzione viene raggiunta e diventa quindi “false”, il programma interrompe il ciclo e continua con il resto del codice.

Esempio di ciclo semplice

Per descrivere meglio il funzionamento di questo ciclo, ti mostriamo la sua struttura con un semplice esempio. A tal fine, definiamo un valore x pari a 10. Utilizzando l’operatore Java “++”, dobbiamo incrementare questo valore di 1 a ogni passaggio e visualizzarlo con il comando Java System.out.println. La nostra condizione di interruzione è il valore 20. In questo modo, il ciclo viene ripetuto finché il valore x rimane inferiore a 20. Il relativo codice si presenta così:

public class Main {
	public static void main(String[] args) {
		int x = 10;
		do {
			System.out.println(x);
			x++;
		}
		while (x < 20);
	}
}
java

Se eseguiamo questo codice, otteniamo il seguente risultato:

10
11
12
13
14
15
16
17
18
19
java

In seguito, il programma ha eseguito il ciclo ancora una volta, ma ha rilevato che il valore x è diventato 20. Poiché ora il valore non è più inferiore a 20, la condizione di interruzione è stata soddisfatta e il ciclo do-while si conclude.

Creazione di un ciclo continuo con il valore “true”

Per mezzo dell’espressione booleana “true” è possibile realizzare un ciclo continuo con do-while. Questo ciclo non si ferma mai autonomamente, poiché non è possibile raggiungere nessuna condizione di interruzione. Per terminare il ciclo è necessario utilizzare manualmente la combinazione di tasti [Ctrl] + [C]. Il relativo codice si presenta così:

public class Main {
	public static void main(String[] args) {
		do {
			System.out.println("È in corso un ciclo continuo.");
		}
		while(true);
	}
}
java

Eseguendo questo codice si ottiene il seguente risultato:

È in corso un ciclo continuo.
È in corso un ciclo continuo.
È in corso un ciclo continuo.
È in corso un ciclo continuo.
È in corso un ciclo continuo.
ctrl+c
java

Il ciclo rimane sempre in esecuzione se non viene interrotto manualmente.

La differenza fra do-while e while

Da molti punti di vista, il ciclo do-while in Java e il ciclo while sono molto simili. Tuttavia, differiscono notevolmente per un aspetto: mentre nel ciclo while la condizione di interruzione è già verificata sin dall’inizio, il ciclo do-while viene prima eseguito almeno una volta per intero e solo dopo questa prima esecuzione può essere terminato. Pertanto, è questa la soluzione giusta se desideri eseguire le istruzioni almeno una volta. Se la condizione di interruzione è determinante, puoi utilizzare invece il ciclo while con controllo della condizione in testa.

Hai trovato questo articolo utile?
Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.
Page top