0
与えられた3D配列を追加し、それをDとして印刷しようとしています。さらに、配列[0]と[1]を与えられた3d配列から取り出し、 2D配列でそれらを追加します。例えば3D配列を2Dに変換する
3Dアレイは、以下の2D行列
> Array[0] : {1,2,3},
>
> {4,5,6}
>
>
> Array[1] : {1,1,1},
>
> {1,1,1}
を有する場合に、2次元配列は、これは私のコードである
{2,3,4},
>
> {5,6,7}
を印刷しなければなりません。しかし、それは次のエラーを与える:
for (int j=0; j<b[j].length;j++)
しかし、いただきました、それと間違って私にはわからない:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at ThreeDRay.add(ThreeDRay.java:53)
at ThreeDRayRunner.main(ThreeDRayRunner.java:53)
ライン53
がある
public static void add(int[][][]array){
int [][] b = new int[array[0].length][array[0][0].length];
for (int x=0; x<array.length;x++){
for (int y=0; y<array[0].length;y++){
for (int z=0; z<array[0][0].length;z++){
b[y][z] += array[x][y][z];
}
}
}
System.out.println ("Adding matrix at 0 and matrix at 1 ");
for (int i=0; i<b.length;i++){
for (int j=0; j<b[j].length;j++){
System.out.print(b[i][j]);
}
System.out.println();
}
}
}
私はそれを変更された:(i = 0、int型、iがてb.lengthを<; I ++の)ため\t \t(INT J = 0 \t \t { \t \t \t \t \t \t; J ZeldaX