2013-03-24 94 views
-2

假設我有一個類方形如下:實現一個拼字遊戲板

class Square{ 
private String letter; 
private boolean isfilled; 
} 

現在我們知道,有一個拼字遊戲板15×15平方。任何人都可以通過在課堂上使用Square課程來幫助我如何組成拼字遊戲板,並且還可以檢查約束條件,比如是否有空間離開或不在或向右?

+5

當然你有*一些*如何開始的想法 - 一個數組也許?來吧,給它一個。你可能會爲自己的能力感到驚訝。那麼如果仍然陷入困境,我們可以看看你的代碼嘗試,並處於一個更好的位置,給予體面的幫助。 – 2013-03-24 13:33:24

+1

你可以使用array:'Square [15] [15] square;' – Abubakkar 2013-03-24 13:33:43

+0

用對象和類來思考。你已經開始了正確的方向與'方形'類。你還能想到在面向對象設計中能夠準確地表達這一點嗎? 也許是一個'GameBoard'類。也許一個'GameBoard'類組成'Scrabble'類! – Xunnamius 2013-03-24 13:39:05

回答

1

我並不完全熟悉拼字遊戲的規則,但考慮到你所提到的,我會定義一個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值都是無效的。

就個人而言,我會簡單地使用字符串而非定義對象平方(如果這是唯一的事情你會與他們無關)

private String squares[][] = new String[17][17]; 

空字符串或空字符串,無論哪個,都沒有設置。否則,如果你要在方塊中實現其他任何方法,那麼我想爲它們定義一個類是可以的。

+1

謝謝,這有助於.... !!!! – 2013-03-24 16:56:17