sudoku 솔버에서 작업 중입니다. 해결 방법을 사용하면 일시적으로 "해결 된"try 및 catch 예외가 발생합니다.try/catch 예외 제거
그러나 나는 담요가 ArrayIndexOutOfBoundsException
인 것을 조금 걱정한다고 생각합니다. 간단히 try/catch 예외에서 숨기는 대신 오류를 수정하기 만하면됩니다.
이 같은 시도는/캐치 모습입니다 : 내가 생각하고
try {
if (puzzle.getNum(i, j) != puzzle.blank)
return solve(nexti, nextj);
} catch (ArrayIndexOutOfBoundsException e) {
return true;
}
이 y++
로 연결 행을 변경하는 시간이있을 때 x > 8
나는 이미 정보를 가지고 있기 때문이다. 그리고 y > 8
일 때 모든 81 (9x9) 셀이 채워지기 때문에 프로그램을 완료해야합니다.
나는 간단한
if((i > 8) && (j > 8)){
return true;
}
의 시도/캐치 방법을 변경하는 선 주위에 생각하고 있지만, 그뿐만 아니라 나에게 오류의 무리를 준다.
수정 사항은 매우 간단하지만 개념적으로 중요하다고 확신합니다.
예외 범위를 벗어나는 예외 (배열 액세스가 진행되는 것을 볼 수 없음)는 무엇입니까? – Daedalus
은 행 수입니다. – ITroubs
당신이 제안한'if' 조건을 변경하여 작동하게 할 수 있습니까? 대신 &&? – jmrodrigg