Cicli for e while

Per ripetere più di una volta determinate operazioni

For

Sai esattamente cosa fare

Esempio:

public class Esempio {

     public static void main (String args[]) {

          int i;

          for(i=0;i<4;i++){
               System.out.println("Stampa a video.");
          }

          for(i=5;i>0;i--){
               System.out.println("Valore di i: " + i);
          }

     }
}


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

OUTPUT 1° for:

Stampa a video.
Stampa a video.
Stampa a video.
Stampa a video.

OUTPUT 2° for:

Valore di i: 5
Valore di i: 4
Valore di i: 3
Valore di i: 2
Valore di i: 1



Spiegazione:

Il ciclo for viene utilizzato quando si vuole eseguire delle operazioni un numero determinato (già conosciuto) di volte. La sintassi del ciclo for è la seguente:

for (assegnazione variabile; limite massimo; incremento){ }

Assegnazione variabile: assegno un valore numerico a una variabile.

Limite massimo: fino a quando questa condizione è vera, si continua a eseguire il ciclo.

Incremento (o decremento): la variabile viene incrementata (o decrementata) a ogni iterazione.

Per consuetudine questo ciclo presenta spesso la variabile "i", ma nessuno ci vieta di utilizzare altre variabili. Comunque è consigliato l'uso della "i".

Per via della sua natura, il for è il tipo di iterazione da preferire quando si lavora per esempio con i vettori.

Due for sono detti annidati quando il primo racchiude il secondo: 

for( ) {
     for( ) {

     }
}

While & Do-while

Sento profumo di loop...

Esempio:

import java.util.*;
public class Esempio {

     public static void main (String args[]) {

     Scanner in = new Scanner(System.in);
     int flag = 0;

     while(flag!=1){
            System.out.println("Motore spento.");
            System.out.print("Inserire 1 per accendere il motore:  ");
            flag = in.nextInt();
     }

     System.out.println("Motore acceso.");

     }

}

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Ciò che fa il programma è richiere all'utente di inserire 1 per accendere il motore, e finché non lo inserisce il programma non termina.

Spiegazione:

I cicli while sono differenti, non si usano le variabili con la formula dell'incremento, ma si eseguono cicli che terminano solo quando non è più soddisfatta una condizione. La sua sintassi è:

while ( condizione ) {  }

Una sua caratteristica è che se una condizione non appare vera già da subito, allora il ciclo viene completamente ignorato. Se si vuole che ciò non accada, in nostro soccorso abbiamo il do-while: analogo al while, con l'unica differenza che esegue le istruzioni all'interno del do almeno una volta. Ecco la sua sintassi:

do {  }
while condizione;

Quando si usano questi cicli, è facile imbattersi in loop, cioè l'esecuzione infinita delle istruzioni all'interno del ciclo. Questo perché la condizione è sempre vera, quindi occorre modificare il valore della variabile coinvolta all'interno del ciclo.

Differenza tra while e do-while

Non sono proprio la stessa cosa

While

int x = 10;

while(x<10) {
          System.out.println("Ciclo while in esecuzione.");
          x--;
}


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Il ciclo viene completamente ignorato. La condizione x<10 non è rispettata.

Do-while

int x = 10;

do {
     System.out.println("Ciclo do-while in esecuzione.");
     x--;
}

while(x<10);

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Il ciclo viene ripetuto infinite volte, siamo in presenza di un loop. La condizione x<10 è sempre rispettata.

javaperstudenti.webnode.it
Creato con Webnode
Crea il tuo sito web gratis! Questo sito è stato creato con Webnode. Crea il tuo sito gratuito oggi stesso! Inizia