如何在 Java 中正确地将值添加到 3D 数组

我正在尝试创建一个输出为的三维数组:


[1,2,3], [1,2,3], [1,2,3], [1,2,3]

[1,2,3], [1,2,3], [1,2,3], [1,2,3]

[1,2,3], [1,2,3], [1,2,3], [1,2,3]

[1,2,3], [1,2,3], [1,2,3], [1,2,3]

[1,2,3], [1,2,3], [1,2,3], [1,2,3]

这是我想出的代码:


public class Triples {


    public static void main(String[] args) {


        int[][][] triplet = new int[5][4][3];


        for (int i = 0; i < triplet.length; i++) 

        {

            for (int j = 0; j < triplet[i].length; j++) 

            {

                System.out.print("[");

                for (int k = 0; k < triplet[i][j].length; k++) 

                {

                    triplet[i][j][k] = i+1;

                    System.out.print(triplet[i][j][k] + "," + "");

                }

                System.out.print("]");

            }

            System.out.println();

        }

    }

}

我的结果如下:


[1,1,1,][1,1,1,][1,1,1,][1,1,1,]

[2,2,2,][2,2,2,][2,2,2,][2,2,2,]

[3,3,3,][3,3,3,][3,3,3,][3,3,3,]

[4,4,4,][4,4,4,][4,4,4,][4,4,4,]

[5,5,5,][5,5,5,][5,5,5,][5,5,5,]

我的问题是我不确定如何将第三个 for 循环中的值递增为 1、2 和 3。我尝试了不同的组合,但它们的结果要么相同,要么不正确。有小费吗?


交互式爱情
浏览 193回答 3
3回答

慕码人2483693

只需分配 的值k+1。就这样解释:(我不太擅长这个。)i和的 值j不会在k循环中改变。所以你不需要它们。但是 ok 的值k在每次迭代中都会发生变化。它也将重置为0每次。但我们不希望0将其更改为k+1. println请在您的声明中添加一些调试。他们帮助很大。triplet[i][j][k] = k+1;有了这个,新的最里面的 for 循环看起来像:for (int k = 0; k < triplet[i][j].length; k++)&nbsp;{&nbsp; &nbsp; triplet[i][j][k] = k+1;&nbsp; &nbsp; //Don't put the comma after last digit.&nbsp; &nbsp; if(k==triplet[i][j].length-1) {&nbsp; &nbsp; &nbsp; &nbsp; System.out.print(triplet[i][j][k] );&nbsp; &nbsp; }else {&nbsp; &nbsp; &nbsp; &nbsp; System.out.print(triplet[i][j][k] + "," + "");&nbsp; &nbsp; }}&nbsp; &nbsp;&nbsp;

沧海一幻觉

您需要在第二个循环中初始化 adder 的值,然后在更深的循环中将该值加 1。试试这个:public class Triples {&nbsp; &nbsp; public static void main(String[] args) {&nbsp; &nbsp; &nbsp; &nbsp; int[][][] triplet = new int[5][4][3];&nbsp; &nbsp; &nbsp; &nbsp; for (int i = 0; i < triplet.length; i++)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; for (int j = 0; j < triplet[i].length; j++)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print("[");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; for (int k = 0; k < triplet[i][j].length; k++)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; triplet[i][j][k] = k+1;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print(triplet[i][j][k] + "," + "");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print("]");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println();&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; }}

MMTTMM

public class Triples {&nbsp; &nbsp; public static void main(String[] args) {&nbsp; &nbsp; &nbsp; &nbsp; int[][][] triplet = new int[5][4][3];&nbsp; &nbsp; &nbsp; &nbsp; for (int i = 0; i < triplet.length; i++)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; for (int j = 0; j < triplet[i].length; j++)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print("[");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; for (int k = 0; k < triplet[i][j].length; k++)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; triplet[i][j][k] = k+1;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(k==triplet[i][j].length-1)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print(triplet[i][j][k] );&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; else&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print(triplet[i][j][k] + ",");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(j==triplet[i].length-1)&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print("]");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; else&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.print("], ");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println();&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; }}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java