2013-12-09 4 views
0

다음 오류가 계속 발생합니다.내 tictactoe 게임의 내 방법 중 하나에서 오류가 발생했습니다.

사용자는 9. 1부터 숫자를 입력 할 수 있습니다 그리고 이것은 내 오류가 표시 것입니다 :

힌트 :
힌트 : 심지어 초기 제로 항목과 유효 입력 지점을 반환 getemptyspot 않습니다 getemptyspot 않습니다 초기 10 개 항목으로도 유효한 입력 점을 반환하십시오.

또한 보드가 꽉 찬 경우 내 코드는 -1을 반환해야합니다.

public int getEmptySpot() 
{ 
    System.out.print("Choose a number where you want your marker to go"); 
    int spot = in.nextInt(); 
    if(b.isAvailable(spot)) 
    { 
     return spot; 
    } 
    if(spot == 0 || spot > 10) 
    { 
     System.out.println("That number is not available. Choose another from the numbered spots"); 
    } 
    return -1; 
} 
+1


오류는 무엇을 얻고 있는가? –

+0

'spot'이 유효한지 확인하기 전에 'spot'이 범위 (1-9)에 있는지 확인하고 싶을 것입니다. 그리고 범위 내에 있지 않으면'-1'을 반환하십시오. – jlars62

답변

1

당신이 isAvailable()의 세부 사항을 게시 할 수 있습니다 : 자리가 이미 가지고가는 경우에 그리고, 내 코드는 다음과 같이 "That number is not available. Choose another from the numbered spots"

내 코드가 반환해야합니까?
코드가 2nd if() sub에 도달 할 수없는 것처럼 보입니다.
if()의 다른 스타일을 사용하는 이유는 무엇입니까?
이 같은 시도 :

if(spot >0 && spot <10){ 
    return spot; 
}else{ 
} 
관련 문제