Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Le istruzioni

Una rapida analisi sulle principali istruzioni di programmazione accettate dalle Java Server Pages
Una rapida analisi sulle principali istruzioni di programmazione accettate dalle Java Server Pages
Link copiato negli appunti

Costrutto if-else

Sintassi

if (cond) {
  istruzione 1;
  istruzione 2;
  ...
  istruzione n;
}
else {
  istruzione n+1;
  istruzione n+2;
  ...
  istruzione m;
} // else

Il blocco di istruzioni che vanno da istruzione 1 a istruzione n viene eseguito solo se la condizione cond è verificata, in caso contrario vengono eseguite le istruzioni che vanno da istruzione n+1 a istruzione m. Il blocco else è opzionale.

Esempio

int a=0, b=10;

if (a>b){   // a non è maggiore di b quindi
  b = b+a;  // questo blocco sarà ignorato
}
else {
  a = a+b;  // invece sarà eseguita la somma
} //else

In questo caso vengono confrontate le due variabili a e b (valgono rispettivamente 0 e 10), si può facilmente constatare che la condizione interna all'istruzione if non è verificata; verranno pertanto eseguite le istruzioni interne al blocco else: ad a verrà assegnato il valore 10 ( 0+10 ).

Costrutto switch-case

Sintassi

switch (espressione) {
  case valore1:
    istruzione 1;
    ...
    [break;]
  case valore2:
    istruzione 2;
    ...
    [break;]
  ...
  case valore n:
    istruzione n;
    ...
    [break;]
  default:
    istruzione default;
    ...
    [break;]
} // switch

L'istruzione switch effettua un controllo sul parametro espressione, ne confronta il valore con i valori definiti nei blocchicase ed esegue il blocco corrispondente. Se nessuno dei valori è accettabile, verrà eseguito il blocco default (opzionale).

L'istruzione break permette di uscire dall'intero blocco switch, se omesso dopo aver eseguito il blocco relativo al case saranno eseguiti anche i controlli relativi ai case rimanenti, compreso il default.

Esempio

int a=10, b=6;

switch (a+b) {
  case 11:
    a = 5;
    break;
  case 15:
    a = 9;
    break;
  default:
    b = 0;
    a = 0;
    break;
} // switch

In questo caso viene confrontato il risultato dell'operazione a+b (16) con i valori specificati nei case, verranno quindi saltati i primi due blocchi di istruzioni (il confronto non dà infatti esito positivo) e sarà eseguito il blocco default: al termine dell'esecuzione dell'istruzione switch le variabili a e b avranno entrambe valore 0.

Costrutto while

Sintassi

while (cond) {
  istruzione 1;
  istruzione 2;
  ...
  istruzione n;
} // while

Il blocco di istruzioni che va da istruzione 1 a istruzione n sarà eseguito ciclicamente finchè la condizione cond resta verificata (ovvero finché restituisce valore true).

Esempio

int a=0;

while (a < 10) { 
  a = a+1; // questa istruzione viene ripetuta per 10 volte
} // while

In questo caso il ciclo verrà ripetuto 10 volte, ad ogni ripetizione la variabile a sarà incrementata. Raggiunto il valore 10 la condizione a<10 non sarà più verificata e restituirà quindi false, causando l'uscita dal ciclo.

Costrutto for

Sintassi:

for (stato iniziale; condizione di permanenza; incremento) {
  istruzione 1;
  istruzione 2;
  ...
  istruzione n;
} // for

Lo stato iniziale è tipicamente definito da un'espressione di assegnamento. Questa espressione viene eseguita una sola volta all'inizio del ciclo.

La condizione di permanenza viene verificata sempre prima di iniziare ad eseguire le istruzioni del blocco, se tale espressione risulta verificata, viene eseguito il blocco di istruzioni.

l'espressione di incremento viene eseguita alla fine di ogni ripetizione delle istruzioni, prima del controllo sulla condizione.

In modo simile al while il blocco di istruzioni sarà eseguito ciclicamente finchè la condizione di permanenza rimane verificata (valore true), tipicamente tale condizione è relativa alle variabili su cui coinvolte nello stato iniziale e nell'incremento.

Esempio

int i, a = 10;

for (i = 0; i < 10; i++) {
  a = a - 1;
} // for

Il ciclo sarà ripetuto 10 volte, finchè, cioè, la variabile i (incrementata dall'istruzione i++) non assume valore 10: al fine dell'esecuzione di questa operazione a avrà valore 0.

Costrutto do-while

Sintassi

do {
  istruzione 1;
  istruzione 2;
  ...
  istruzione n;
} while (cond);

La differenza tra un ciclo do-while e un ciclo while sta nel fatto che nel primo la condizione viene controllata dopo aver eseguito le istruzioni interne al blocco, che quindi saranno eseguite almeno una volta.

Esempio

int a = 9;

do {
  a = 0;
} while (a > 10);

In questo caso il ciclo viene ripetuto una sola volta, con l'effetto di assegnare ad a il valore 0. Nonostante la condizione del ciclo non fosse verificata nemmeno alla prima esecuzione, il blocco viene eseguito comunque almeno una volta.


Ti consigliamo anche