int z1 = 2;
final int z2 = 2;
//boolean e;
public static void main(String[] args){
int z1 = 111;
int z2 = 111;
System.out.println("打印数据:z="+z1+"\n"+z2);
}
以上程序中的z2为什么我用final定义了,还是能改变它的值,输出111。
int z1 = 2;
final int z2 = 2;
//boolean e;
public static void main(String[] args){
int z1 = 111;
int z2 = 111;
System.out.println("打印数据:z="+z1+"\n"+z2);
}
以上程序中的z2为什么我用final定义了,还是能改变它的值,输出111。
main外的z2是全局变量,在里面定义的z2是局部变量,他们是不同的变量。而你上面的代码修改的是局部变量,并不是由final修饰的全局变量。