In questa lezione del corso su Java vedremo alcune strutture di controllo e cicli. Tutti i linguaggi di programmazione possiedono strutture per controllare il flusso del programma, la più semplice e conosciuta è “if“, che significa proprio “se” e serve per verificare una condizione o più, unite dagli operatori logici.
Prendiamo questo esempio di codice:
package corso;
public class Main
{
public static void main(String[] args)
{
char cTest = 'L';
String strTest;
if (cTest == 'S')
strTest = "Non mi piace la scimmia!";
else if (cTest == 'C')
strTest = "Bello il cavallo che salta!";
else if (cTest == 'L')
strTest = "Che bocca grande ha il leone!";
else if (cTest == 'K')
strTest = "Ma quanto beve questo cammello?";
else
strTest = "Se non conosco l'animale lo evito!";
System.out.println(strTest);
}
}
possiamo notare l’uso delle condizioni per rappresentare un elenco, in questi casi è preferibile, perché più performante, utilizzare l’istruzione switch, vediamo lo stesso esempio modificato per l’uso con switch:
package corso;
public class Main
{
public static void main(String[] args)
{
char cTest = 'L';
String strTest;
switch(cTest)
{
case 'S':
strTest = "Non mi piace la scimmia!";
break;
case 'C':
strTest = "Bello il cavallo che salta!";
break;
case 'L':
strTest = "Che bocca grande ha il leone!";
break;
case 'K':
strTest = "Ma quanto beve questo cammello?";
break;
default:
strTest = "Se non conosco l'animale lo evito!";
}
System.out.println(strTest);
}
}
Come potete vedere la variabile da testare è di tipo carattere, ma può essere anche di tipo numerico. La differenza di prestazioni è dovuta al fatto che, mentre nel primo esempio ogni condizione va verificata, nel secondo il programma va immediatamente nel valore giusto e questo lo potete vedere facilmente utilizzando il debugger. Il break consente di far saltare il flusso del codice alla fine dello switch, se provate a toglierli, vedrete che il programma continuerà al prossimo case.
Vediamo ora il ciclo while che serve per compiere una determinata azione numerose volte, il suo uso ed utilizzo attraverso questo esempio:
package corso;
public class Main
{
public static void main(String[] args)
{
String strTest = "Giampaolo Rossi";
int k = 0;
int qt = 0;
while (k < strTest.length())
{
if (strTest.charAt(k) == 'o')
qt++;
k++;
}
System.out.println("In " + strTest + " ci sono " +
qt + " lettere o");
}
}
Oltre al ciclo while, abbiamo anche do-while, l’unica differenza è che con questa seconda struttura il corpo viene eseguito sicuramente almeno una volta. Un’altra struttura per creare dei cicli è il for, vediamo come utilizzarlo al posto del while.
package corso;
public class Main
{
public static void main(String[] args)
{
String strTest = "Giampaolo Rossi";
int k;
int qt = 0;
for (k = 0; k < strTest.length(); k++)
{
if (strTest.charAt(k) == 'o')
qt++;
}
System.out.println("In " + strTest + " ci sono " +
qt + " lettere o");
}
}
Come avete potuto vedere da questa lezione, il corso che voglio creare è soprattutto dedicato alla pratica, di corsi Java dediti alla teoria ce ne sono moltissimi nella rete, non avete che l’imbarazzo della scelta. Quello che voglio da voi però è di non barare, non copiate ed incollate il codice che vi proporrò di volta in volta, ma cercate di capirlo e soprattutto create vostri esempi. Ovviamente potete fare come volete, non ho controllo su di voi, ma se volete diventare dei veri programmatori Java occorre che studiate la teoria o qui o in altri corsi e poi fare pratica, tanta pratica e fatica. In questo corso, ripeto, vedrete moltissimo codice sorgente e se aveste dei problemi potete colloquiare con me tramite il nostro forum, questo forse, se ben sfruttato, è un mezzo molto importante per capire la programmazione Java.
<< Lezione Precedente – Inizio Corso – Lezione Successiva >>