Java 多维数组的逐步创建
我的任务是一步一步地创建这个数组Java 多维数组的逐步创建,java,Java,我的任务是一步一步地创建这个数组 int[][][] feld = new int[6][10][7]; 我的解决方案真的会做同样的事情吗(我还没有找到一种方法来找到答案)?: int[]feld=新的int[6][]; 对于(intd1=0;d1
int[][][] feld = new int[6][10][7];
我的解决方案真的会做同样的事情吗(我还没有找到一种方法来找到答案)?:
int[]feld=新的int[6][];
对于(intd1=0;d1
我的解决方案真的会做同样的事情吗(我还没有找到一种方法来找到答案)
阅读下面的示例:
相当于:
Age[][][][][] Aquarius = new Age[6][][][][];
for (int d1 = 0; d1 < Aquarius.length; d1++) {
Aquarius[d1] = new Age[10][][][];
for (int d2 = 0; d2 < Aquarius[d1].length; d2++) {
Aquarius[d1][d2] = new Age[8][][];
for (int d3 = 0; d3 < Aquarius[d1][d2].length; d3++) {
Aquarius[d1][d2][d3] = new Age[12][];
}
}
}
您的解决方案不能执行相同的操作,因为它无法编译。第三行有一个类型错误,因为
feld[d1]
的类型是int[][]
,但是您试图分配int[]
@kaya3哦,我不知道我必须这样做。谢谢@A哦,我发现有趣的是,您的代码使用d1
和d2
作为迭代器变量,而习惯上使用I
和j
,JLS使用d1
和d2
。似乎您的代码来自JLS示例。填空是大学课程的家庭作业任务,因此他们可能从那里开始:)
Age[][][][][] Aquarius = new Age[6][10][8][12][];
Age[][][][][] Aquarius = new Age[6][][][][];
for (int d1 = 0; d1 < Aquarius.length; d1++) {
Aquarius[d1] = new Age[10][][][];
for (int d2 = 0; d2 < Aquarius[d1].length; d2++) {
Aquarius[d1][d2] = new Age[8][][];
for (int d3 = 0; d3 < Aquarius[d1][d2].length; d3++) {
Aquarius[d1][d2][d3] = new Age[12][];
}
}
}
int[][][] feld = new int[6][][];
for (int d1 = 0; d1 < feld.length; d1++) {
feld[d1] = new int[10][]; // <-- added extra [] here
for (int d2 = 0; d2 < feld[d1].length; d2++) {
feld[d1][d2] = new int[7];
}
}