假设我有一个类Square,如下所示:
class Square{
private String letter;
private boolean isfilled;
}
现在我们知道拼字游戏板上有15x15个正方形。任何人都可以通过在棋盘类中使用Square类来帮助我制作拼字游戏板,还可以检查约束,例如是否有空间可以离开或向右?
答案 0 :(得分:1)
我并不完全熟悉Scrabble的规则,但考虑到你提到的内容,我会定义一个Square实例的二维数组。
private Square squares[][] = new Square[15][15];
您可能应该在构造函数中实例化这些方块。
之后,您应该提供一个界面来设置给定坐标的值。
public void setSquare(int x, int y, String value)
将此字符串设置为指定的方块。你也可以这样做,如果字符串为空或为空(无论你喜欢哪个),方形变为“未设置”。如果参数在边界内(0-14之内),此方法还应验证参数。您还可以选择在另一个函数中实现该验证,例如:
public boolean isValidCoordinate(int x, int y)
因此,对于超出数组索引的有效索引范围,您不会遇到太多问题,您可以在所有方面定义具有方形缓冲区的板。
private Square squares[][] = new Square[17][17];
使用此板,唯一有效的方块是1-16。任何带有1或17的x或y值都是无效的。
就个人而言,我只是简单地使用Strings而不是定义一个Squares对象(如果这是你唯一要做的事情)
private String squares[][] = new String[17][17];
未设置空字符串或空字符串(以较小者为准)。否则,如果你要在方块中实现任何其他方法,那么我想为它们定义一个类是可以的。