是否允许在没有任何if / for / etc语句的情况下放置一些花括号来限制变量范围?
一个例子:
public void myMethod()
{
...
{
int x;
x = 5;
}
...
}
我可能想要这样做,所以我肯定知道我不会在范围之外访问/更改变量并且它会被预先销毁
答案 0 :(得分:3)
是的,它被允许了。试试看你自己
答案 1 :(得分:2)
花括号{ .. }
将变量的范围限制在块中
但是,可以对属于{ .. }
块范围的全局变量进行更改。
int x = -1;
double y = 5;
{
x = 10;
y = 100;
char c = 'A';
}
System.out.println(x + " " + y); // 10 100.0
System.out.println(c); // Compile time error and out of scope
{
c = 'B'; // Compile time error and out of scope
}