[英]ArrayIndexOutOfBoundsException while printing a 3D array in JAVA
[英]ArrayIndexOutOfBoundsException in 3D array
我正在嘗試為神經網絡制作一個鋸齒狀的數組,這給了我一個超出范圍的錯誤...
int[] sizes = {
layer1, layer2, layer3
};
int k = sizes.length - 1;
double[][][] net = new double[k][][];
int i;
for (i = 0; i < k; i++)
net[i] = new double[sizes[i]][];
for (int j = 0; j < sizes[i]; j++)
net[i][j] = new double[sizes[i + 1]];
net[x][ ][y]
的大小應等於net[x+1][y][ ]
。
我是在紙上做的,我認為這會起作用。
int[] sizes = {
layer1, layer2, layer3
};
int k = sizes.length - 1;
因此, k
等於2。
int i;
for (i = 0; i < k; i++)
net[i] = new double[sizes[i]][];
在那個循環之后, i
等於2。
for (int j = 0; j < sizes[i]; j++)
net[i][j] = new double[sizes[i + 1]];
^^^^^^^^^^^^
ArrayIndexOutOfBoundsException
吊桿, sizes[i + 1]
拋出ArrayIndexOutOfBoundsException
,由於sizes
僅具有索引0,1和2以及你指的是sizes[3]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.