![]() ![]() |
|
Come in tutti i linguaggi di programmazione
procedurali
(e a differenza dei linguaggi dichiarativi) in Java il programmatore
deve descrivere in modo dettagliato i passi dell'algoritmo progettato per
la risoluzione di un problema.
Per controllare il flusso di esecuzione, Java fornisce:
Inoltre vedremo come in Java sia possibile usare metodi ricorsivi in alternativa agli altri meccanismi di iterazione (si dice che un metodo è definito ricorsivamente se tra le istruzioni che ne definiscono il corpo compaiono invocazioni al metodo stesso).
|
|
Un'istruzione Java può essere:
Ad esempio, ricollegandoci agli esercizi sui caratteri visti in laboratorio:
|
|
![]() ![]() |
Possiamo utilizzare un blocco per racchiudere una sequenza di istruzioni ma anche per racchiudere dichiarazioni di variabili
Le variabili dichiarate in un blocco sono visibili solo all'interno del blocco stesso (variabili locali) e non sono quindi riferibili all'esterno del blocco
Esempio:
public class ProvaBlocchi { public static void main(String[] args) { double a = 0; { int b = 10; System.out.println(b + "/" + a + " = " + (b/a)); } { int b = -5; System.out.println(b + "/" + a + " = " + (b/a)); } { int b = 0; System.out.println(b + "/" + a + " = " + (b/a)); } } } |
I nomi (identificatori) utilizzati per tali variabili non possono essere uguali a identificatori
di variabili esterne al blocco: il compilatore segnalerebbe un errore.
Esempio:
public class ErroriBlocchi { public static void main(String[] args) { double a = 0; { int a = 0; // a is already defined int b = 10; } System.out.println(b + "/" + a + " = " + (b/a)); // cannot resolve symbol b } } |