在for循环中声明的变量的范围
for(int i=0; i<10;i++){ int j=0; }
是ja块变量还是局部变量? 我看到j的范围只有for循环结束
局部变量在方法,构造函数或块中声明。
由此可见, 所有块变量都是局部变量。
根据Block的定义
块是平衡括号之间的一组零个或多个语句,可以在允许单个语句的任何位置使用。
所以
{ //block started } //block ended
在块内声明的变量是什么,范围仅限于该块。
for(int i=0; i<10;i++){ int j=0; }
因此J
范围仅限于该块内部。 这是循环。
for(int i=0; i<10;i++){ int j=0; //do some thing with j ---> compiler says "yes boss" } //do some thing with j ---> compiler says "Sorry boss, what is j ??"
它是块的局部变量。 在for循环之外,j将不复存在。
j变量只能在{this block}中访问。 这不仅意味着它不能在其他任何地方进行更改,而且每次循环时都会重新创建它。
j只在循环中有作用域,在循环外部,j不能被访问。 有关范围的更多信息, 请参阅链接,这将有所帮助。
“本地”一词意味着某些东西可以在某处获得,但不在“某处”的范围之外。 在Java中,在块内声明的变量具有块作用域 ,这意味着它们仅在此块内可用 – 它们是本地的 。