我一直在尝试填充
int[][][] sudoku = new int[5][9][9];
带的阵列
String[][] tmp = new String[21][21];
tmp[][]保存类似的数字
005700020009600020
490060010140050030
例如,这个代码工作得很好,它给了我想要的号码
System.out.println(Integer.valueOf(tmp[4][10]));
但是这个代码
//sudoku1
b=0; c=0;
for (int i = 0; i < 6; i++) {
for (int j = 9; j < 18; j++) {
sudoku[1][b][c] = Integer.valueOf(tmp[i][j]);
c++;
}
b++;
}
投掷";索引9超出长度9〃的界限;错误
在两个循环外都定义了c
,并且在内部循环中每次执行都添加1。内部循环执行6*9次,因此c
甚至可以达到值54,但当尝试使用sudoku[1][b][c]
时达到9时,它会抛出异常,因为多数组sudoku
的第三个元素的数组索引从0变为8。