2014-06-15 8 views
-2
private Piece[][] board; 

public cboard(){ 
     this.board = new Piece[8][8]; 
    } 

    public boolean isEmpty(int x, int y){ 
     boolean empty= true; 
     if (board[x][y] != null){ 
      empty= false; 
     } 
     return empty; 
} 
public void placePiece(Piece, int x, int y){ 
    if(isEmpty(x, y)){ 
     board[x][y] = piece; 
    } 
} 
} 

조각에 대한 배열이 생성됩니까? 함수가 비어 있는지 확인해야합니다. 그렇지 않으면 장소가 비어 있지 않습니다.배열을 bluej로 선언하려면 어떻게해야합니까?

답변

0

예, 생성자에서 배열을 올바르게 만듭니다. 기본적으로 Java는 배열을 null 값으로 채 웁니다. 그러나 Piece 개체로되어 있음을 알고 있습니다.

null을 테스트하므로 isEmpty 메서드가 작동해야합니다. 그러나 Piece을 다시 제거하고 배열의 항목을 null으로 다시 설정해야 할 수도 있습니다. 그렇지 않으면 isEmpty은 처음부터 작동합니다.

힌트 :
isEmpty 방법을 한 줄로 나눌 수 있습니다. boolean을 반환하고 board[x][y] != null 인 경우 테스트 결과는 boolean입니다. cboard 자바의 모든 클래스처럼 대문자로 시작해야합니다
그래서 당신이 필요 return board[x][y]==null;

마지막으로 한가지입니다.