Java 具有多个for循环的二维阵列

Java 具有多个for循环的二维阵列,java,multidimensional-array,Java,Multidimensional Array,我对Java相当陌生,在理解课程中的代码时遇到了一些问题,这让我的学习速度变慢了。有人能告诉我第一个for循环正在做什么吗?我对arr[row]的价值感到困惑 当我看结果时,它是1 2 3 4 5 6是有意义的,但它是循环生成的第一个,然后是第二个?如果是这样的话,那么第二个是怎么做的,因为我们从行=0开始?col=0?我真的需要帮助来推进这项工作。代码如下: public static void main(String[] args) { int[][] arr = new int

我对Java相当陌生,在理解课程中的代码时遇到了一些问题,这让我的学习速度变慢了。有人能告诉我第一个for循环正在做什么吗?我对arr[row]的价值感到困惑

当我看结果时,它是1 2 3 4 5 6是有意义的,但它是循环生成的第一个,然后是第二个?如果是这样的话,那么第二个是怎么做的,因为我们从行=0开始?col=0?我真的需要帮助来推进这项工作。代码如下:

  public static void main(String[] args) {
    int[][] arr = new int[6][];

    for(int row = 0; row < arr.length; row++)
      arr[row]= new int[row + 1];

    for(int row = 0; row < arr.length; row++){
      for(int col = 0; col < arr[row].length; col++){
        arr[row][col] = (row + 1) *(col +1);
        //System.out.print(arr[row][col] + " ");
        System.out.print("row[" + row + "]"+ "col["+col +"]= "+arr[row][col] + " ");
      }
      System.out.println(); //new line
    }
  }

它只是创建一个多维数组,每行比前一行多一个插槽。 大概是这样的:

[]
[][]
[][][]
[][][][]
[][][][][]
[][][][][][]
第二对扫描每个元素,并指定与其尺寸成比例的值。所以它将是:

[1]
[2][4]
[3][6][9]
[4][8][12][16]
[5][10][15][20][25]
[6][12][18][24][30][36]
它真的让我想起了


希望我在第一个循环中帮助了

arr[row]只是为该行创建列。第二个循环只是将值添加到您创建的行和列中。嵌套循环上方的第一个for循环初始化每一行,其长度等于行+1。在第二个for循环中的嵌套循环中,它为每个单元格分配一个值,然后将其打印出来。您可以调试程序,查看每个变量在执行过程中得到的值,以及执行流是如何发生的。注释中说您可以调试它,因此我们不会解释一切可能看起来有点苛刻,但理解未知代码实际上是一项非常关键的技能。不会总是有人向您解释代码。在这种情况下,它应该非常简单。只要你知道2D数组是什么,你就不应该在理解那里发生的事情上有任何问题。谢谢Anoop或Desai和其他人……这是我理解整个事情所需要的唯一澄清。是的!你帮了我。万分感谢