有人可以帮助我理解 Java 中的范围规则吗?这显然是无效的:
{
int i = 0;
System.out.println(i); // fine, of course
}
System.out.println(i); // syntax error
i
在 中声明,在{}
外部不可用。那么这个呢:
for (int i = 0; i < 10; i++) {
System.out.println(i); // fine, of course
}
System.out.println(i); // syntax error, same as above.
我对这里的语法错误感到惊讶。i
在外部范围内声明,但稍后不可用。for
它是否通过一些特殊的循环规则绑定到内部块范围?还有其他可能发生这种情况的情况吗?