【问题标题】:How to create a nested loop with 2D Arrays error? [closed]如何创建带有 2D 数组错误的嵌套循环? [关闭]
【发布时间】:2021-03-17 18:53:28
【问题描述】:

我目前正在上一个在线编码课程,我想知道如何代替手动获得答案,而是如何使用循环来提高效率,因为工作表有以下问题:

给定:int[][] values = new int[4][5]
编写一个嵌套循环来设置值如下:

    [0] [1] [2] [3] [4]
 [0] 1   2   3   4   5
 [1] 1   2   3   4   5
 [2] 1   2   3   4   5
 [3] 1   2   3   4   5

我的以下代码是:

int table[][] = new int [4][5];
table[0][0] = 0;
table[0][1] = 1;
table[0][2] = 2;
table[0][3] = 3;
table[0][4] = 4;

table[1][0] = 1;
table[1][1] = 2;
table[1][2] = 3;
table[1][3] = 4;
table[1][4] = 5;

table[2][0] = 1;
table[2][1] = 2;
table[2][2] = 3;
table[2][3] = 4;
table[2][4] = 5;


table[3][0] = 1;
table[3][1] = 2;
table[3][2] = 3;
table[3][3] = 4;
table[3][4] = 5;

table[4][0] = 1;
table[4][1] = 2;
table[4][2] = 3;
table[4][3] = 4;
table[4][4] = 5;

/* System.out.print table */

【问题讨论】:

  • 所以你已经知道你需要循环。为什么你(显然)还没有开始?
  • for (int i = 0; i < 4; ++i) { for (int j = 0; j < 5; ++j) { table[i][j] = j + 1; } } 除了 for 循环,还有 whiledo-while 循环。
  • 你根本不需要循环。 int[][] table = {{1, 2, 3, 4, 5}, {1, 2, 3, 4, 5}, {1, 2, 3, 4, 5}, {1, 2, 3, 4, 5}};看看这个问题stackoverflow.com/questions/1938101/…

标签: java arrays loops multidimensional-array


【解决方案1】:

请注意,内部数组中每个元素的值等于它们的索引 + 1,独立于它们的外部索引。让我们应用一个嵌套循环并将这个公式应用到内部循环中:

for (int i = 0; i < table.length; i++) {
    for (int j = 0; j < table[i].length; j++) {
        table[i][j] = j + 1;
    }
}

请注意,我们可以获得数组的大小,这在循环的两个级别中都使用过。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多