Istruzioni condizionali
Nella lezione precedente abbiamo visto come è possibile utilizzare gli operatori per svolgere operazione con le variabili. In questa lezione analizziamo nel dettaglio cosa sono e come possiamo scrivere delle istruzioni condizionali in Java.
Costrutto if... else if... else
Tornando all'esempio della lezione precedente troviamo una riga con la condizione if, seguita (tra parentesi) dalla condizione che "x" deve essere uguale (==) a "y". In questo caso si potrebbero anche omettere le parentesi graffe, infatti se l'istruzione che segue è una sola non c'è bisogno di racchiudere in blocco, ma è importante che almeno agli inizi vi abituiate ad utilizzarle le parentesi graffe.
Seguendo troviamo la condizione else if, che indica una alternativa determinando un'ulteriore condizione (se "y" è maggiore - > - di "x"), anch'essa deve essere seguita da un blocco di graffe, nel caso in cui le istruzioni da eseguire siano maggiori di una.
La struttura tipica di una condizione del genere è la seguente:
// condizione primaria
if (condizione1) {
...
...
}
// condizione secondaria:
// questa condizione viene verificata solo se la prima non è risultata vera
else if (condizione2) {
...
...
}
// condizione residuale:
// consiste nel comportamento da seguire se nessuna delle precedenti condizioni risulta vera
else{
...
...
}
Switch
Nel caso si dovessero scrivere tante condizioni per una stesa variabile la soluzione implementativa migliore risulta l'uso del costrutto switch di cui vediamo un esempio:
class ProvaSwitch{
public static void main(String args[]){
int k = 10;
switch(k){
case 5: System.out.println(" case k = 5");
break;
case 10: System.out.println(" case k = 10");
break;
case 15: System.out.println(" case k = 15");
break;
default: System.out.println(" case default");
}
}
}
In questo caso l'output a video sarà il seguente:
case k = 10Questo perchè nel blocco switch troviamo 4 casi, determinati dalla parola chiave case e seguiti dal valore del caso e dai due punti. Importante, dopo tutte le istruzioni prima dell'ultima, è l'istruzione break che indica al compilatore di non tenere presente cosa c'è scritto sotto e permette di andare avanti (l'uso del break dunque permette di uscire dallo switch).
L'ultimo caso non ha bisogno della parola chiave case perchè è la scelta predefinita, nel caso in cui "k" non sia ne uguale a 5, ne a 10 e nemmeno a 15.







