我目前正在爲初學者級別的課程作業,我需要幫助構建一個程序,測試sodoku解決方案呈現爲int [] []是否有效。我通過創建幫助方法來檢查行,列和網格。2維數組和方法調用 - 初學者
要檢查列,我調用一個名爲getColumn的方法,該方法返回一個列[]。當我測試它時,它工作正常。然後我使用名爲uniqueEntries的方法將它傳遞出來,以確保沒有重複項。
問題是,當我調用我的getColumn方法時,它返回一個只包含一個數字的數組(例如11111111,222222222,33333333)。我不知道它爲什麼這樣做。這裏是我的代碼:
int[][] sodokuColumns = new int[length][length];
for(int k = 0 ; k < sodokuPuzzle.length ; k++) {
sodokuColumns[k] = getColumn(sodokuPuzzle, k);
}
for (int l = 0; l < sodokuPuzzle.length; l++) {
if(uniqueEntries(sodokuColumns[l]) == false) {
columnStatus = false;
}
}
我的助手是如下
public static int[] getColumn(int[][] intArray, int index) {
int[] column = new int[intArray.length];
for(int i = 0 ; i < intArray.length ; i++) {
column[i] = intArray[i][index];
}
return column;
}
謝謝!
這很難說。 sodokuPuzzle中有哪些數據? –
@Eskalior將獲得行,而不是列,這取決於OP如何在他們的頭部定義它們。 –