2016-12-27 16 views
0

我有一個網格,每個數組都有一個字符(char [] [])。在ArrayList中的二維網格中存儲對象的座標和特徵

在那個網格上,我建了房子,佔用了一個或多個網格塊。 我想在某種列表中存儲位置(網格座標)和特徵(價格,保養)。

的房屋目標爲包含多個對象具有這些特徵的一個枚舉的一部分:

public enum Building { 
    HOUSE(width, height, price, upkeep, symbol) 
    FACTORY(width, height, price, upkeep, symbol) 
} 

- 寬度和高度是它佔用 在網格的片的數目 - 符號所使用的字符在網格中代表特定建築

我認爲做這種方式:(僞)

ArrayList<house> buildings = new ArrayList<House> 

但如何ç我應該添加房子的位置(x和y座標在這個arrayList中嗎?我應該使用另一種數據類型嗎?

回答

1

我覺得你的枚舉應該是BuildingType如果你的兩個房子對象可以有不同的屬性,比如你提到的位置。

創建一個Building類,該類有類似int x; int y;BuildingType(枚舉),指示它是哪種建築物。

如果有必要,你可以有超類Building和兩個(或更多?)在這種情況下,你不需要任何枚舉子長類型(HouseFactoryApartment等)。全部取決於您的要求。

+0

我已經創建了這個類,int x; int y和BuildingType。 Whata Datatype是否會推薦將建築物對象存儲在?謝謝! – Waterfles

相關問題