Sono variabili definite all'interno di un blocco
Si possono usare solo all'interno del blocco in cui sono definite
class Blocco { public static void main(String args[]) { int x=12; if(true) { String y; y="abcd"; System.out.println(y); } System.out.println(y); // errore } }
Le variabili esistono solo all'interno del blocco
Si può dichiarare la stessa variabile anche in più blocchi:
class Blocco { public static void main(String args[]) { int x=12; if(true) { String y="abcd"; System.out.println(y); } if(x>2) { double y=12.2; System.out.println(y); } } }
La variabile che uso nel ciclo for la posso anche dichiarare nel ciclo
class Blocco { public static void main(String args[]) { for(int i=0; i<10; i++) System.out.println(i); } }
La variabile si deve solo dentro il ciclo:
class Blocco { public static void main(String args[]) { for(int i=0; i<10; i++) System.out.println(i); System.out.println(i); // errore!!! } }
Se devo fare un ciclo, e la variabile non mi serve dopo
Cosa tipica: stampare un array
for(int i=0; i<v.length; i++) System.out.println(v[i]);