当更广泛的“ for”循环返回时,更广泛的“ for”循环内部的嵌套“ for”循环中的变量初始化是否会重新初始化变量?

时间:2019-10-16 21:38:33

标签: java

我试图找出嵌套的“ for”循环中的变量的初始化(此循环嵌套在更广泛的“ for”循环中)是否会在程序循环返回时重新初始化最初初始化的变量。从更广泛的“ for”循环开始,嵌套“ for”循环又一次(在第一次之后)。

似乎没有任何互联网的东西(包括堆栈溢出)可以专门解决我的问题。

示例:代码运行2次后,是否将“ h”重新初始化为“ k”? (我认为此时k将为1)

for(int k = 0; k < 4; k++)
{  
    for (int h = k; h >= 0; h--)
    {
        System.out.print(k);
    }
    System.out.println();
}

2 个答案:

答案 0 :(得分:2)

关于这部分问题:

  

似乎没有任何互联网内容...   专门解决了我的问题。

官方Java教程实际上包含您问题的直接答案:

https://docs.oracle.com/javase/tutorial/java/nutsandbolts/for.html

  

此变量的范围从其声明延伸到末尾   for语句控制的块...

答案 1 :(得分:0)

第一个循环(1 a-ina b-inb c-inc 2 d-ina e-inb f-inc )将迭代4次。每次迭代都会带来一个新的for(int k = 0; k < 4; k++)。这意味着每次循环迭代时,您都将从新的h开始。