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;
}
}
}
这会为碎片创建一个数组吗? 该功能必须检查该地方是否为空
答案 0 :(得分:0)
是的,在构造函数中正确创建数组。
默认情况下,Java将使用null
值填充数组,但它知道它们应该是Piece
个对象。
因此,isEmpty
方法应该有效,因为它会测试null
。但是,您可能需要一种方法来删除 Piece
,然后将数组中的条目设置回null
- 否则您的isEmpty
只会在开头工作
只是一个提示:
您可以将isEmpty
方法细分为一行。它会返回boolean
,而{if board[x][y] != null
中的测试也会产生boolean
。
所以你需要的只是return board[x][y]==null;
最后一件事:cboard
应该以大写字母开头,就像Java中的所有类一样。
答案 1 :(得分:0)
前面的程序使用以下代码行声明一个数组(名为anArray):
//声明一个整数数组 int [] anArray;
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html