2015-05-19 39 views
0

擡頭,我是一個開始,所以請忽略這個事實,我的詞彙量有限!爲許多對象創建通用名稱,Java

所以我想做一個多米諾骨牌遊戲。我想讓每個多米諾骨牌都是一個對象,這樣我就可以知道所有重要的信息(比如它是否在板子上,如果是的話)。如果我只是爲多米諾骨牌創建數字,基本上這個代碼看起來像這樣:

for(int x = 12; x >= 0; x--) 
{ 
    for(int y = 0; y <= x; y++) 
    { 
    Domino domxy = new Domino(x,y); 
    } 
} 

其中「domxy」如果x = 12且y = 0,則名稱是dom120,給每個多米諾名稱一個唯一的名稱。

+1

你可能想多米諾骨牌存儲在一個二維數組,其中x和你是你的數組索引。作爲參考:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html –

+1

一種方法是使用'new Domino()'的2D數組。 – assylias

+0

Domino的數組會爲你工作嗎? –

回答

0

只需創建的Domino的二維數組對象是這樣的:

Domino[][] array = new Domino[x][y] 

,並分配這樣的每一個元素:

array[x][y] = new Domino(x, y); 
+0

好的,這樣的解決方案可能會有不同類別的多米諾骨牌,比如InHand,Boneyard和OnBoard,這些都是Domino的子類,我沒有提及。有了這些課程,我必須能夠將Boneyard多米諾骨牌更改爲一個InHand多米諾骨牌,如果玩家吸引它的話。 –

+0

@SaigeHamblin這不是一個非常面向對象的解決方案,您可以爲包含Domino類型對象的Boneyard和Hand創建類。在運行時改變對象的類是我在這種情況下不會做的。 –

+0

如果你的所有對象都是子類,那麼是的,你不能刪除舊對象,創建新的子類,並將其設置爲主類引用。 –