IL CICLO WHILE
Dopo aver esaminato i test condizionali adesso andremo a vedere le strutture di controllo del flusso che appartengono alle iterazioni. L’immagine riporta la forma generale del ciclo while.
Il ciclo while ripete in loop una serie di righe di codice fino a quando la condizione specificata tra parentesi è true. La condizione viene valutata subito, cioè prima dell’inizio del ciclo. Questo ha una importante implicazione perché se la prima volta che viene valutata l’espressione booleana questa è false, l’intero loop non viene eseguito. L’istruzione di post incremento x++ è quella che ci permette di raggiungere dieci e quindi uscire dal loop. Otteniamo una sequenza di numeri da 0 a 9. Vediamo l’esempio.
IL CICLO DO/WHILE
È una variante del ciclo while. La sua struttura è la seguente.
Questa volta la condizione booleana è posta a fine loop quindi almeno una volta l’iterazione viene eseguita. Vediamo un esempio.
IL CICLO FOR
Vediamo la struttura generale di un ciclo for.
L’inizializzazione di solito è rappresentata con l’assegnamento di un valore a una variabile. Questa variabile rappresenta la variabile di controllo dell’intero loop. La condizione è una normale espressione booleana che spesso usa la variabile di controllo, il loop continua fino a quando questa condizione è vera. L’iterazione è un’espressione che viene eseguita come ultima istruzione del ciclo for. Normalmente è rappresentata dall’incremento o decremento della variabile di controllo. Vediamo un esempio.
LO STATEMENT BREAK
In questa sezione parleremo della terza categoria del controllo di flusso chiarendo il salto incondizionato. Ripartiamo dall’istruzione switch dove avevamo incontrato la prima istruzione di salto incondizionato, ossia break.
La parola chiave break come abbiamo visto provoca l’uscita immediata dallo switch. In generale possiamo dire che lo statement break provoca l’uscita incondizionata da un loop.
Il break provoca un salto incondizionato, e viene eseguita l’istruzione immediatamente successiva al blocco di codice del ciclo while. In alcuni linguaggi di programmazione come il C esiste una particolare istruzione: goto. È sconsigliato l’utilizzo di questa istruzione poiché porta a scrivere codice poco elegante e poco leggibile.
ESEMPIO DI SALTO INCONDIZIONATO NON MOLTO USATO IN JAVA
Si scrive una etichetta seguita dai due punti e un blocco di codice delimitato da parentesi graffe. Se all’interno del blocco anche nidificato facciamo comparire la keyword break seguita dalla label con cui abbiamo contrassegnato il blocco, si provoca l’uscita immediata dal blocco contrassegnato. Vediamo un esempio in cui in un solo colpo usciamo da due loop.
LO STATEMENT CONTINUE
Possiamo considerare continue come complementare all’istruzione break, tale istruzione all’interno di un ciclo sposta il flusso di codice in testa al ciclo, quindi si salta una iterazione. Vediamo un esempio in cui stampiamo tutti i numeri dispari da 0 a 10 prima senza utilizzare continue poi con continue.
L’output sarà 1-3-5-7-9 cioè solo i numeri dispari. Questa volta saltiamo tutti i numeri pari (resto del modulo 0) e ritorniamo in testa al ciclo con continue. Se il numero è dispari viene stampato e il risultato è il medesimo. Continue effettua un salto incondizionato come break, solo che anziché uscire dal ciclo salta una iterazione e ritorna in testa al ciclo for.
LINK AI POST PRECEDENTI
LINK AL CODICE SU GITHUB
ESECUZIONE DEL CODICE DI ESEMPIO
- Scaricare il codice da GITHUB, lanciare il file JAR con il seguente comando in Visual Studio Code, posizionandosi nella directory contenente il JAR.
java -jar –enable-preview CorsoJava.jar
- Oppure mettere in esecuzione il main che si trova nel file CorsoJava.java.
Scrivi un commento