选择阶梯式文字游戏的设计方法

时间:2010-05-16 14:54:21

标签: java collections

我正在尝试构建一个简单的应用程序,完成的程序看起来像这样:

ladder-like game http://img199.imageshack.us/img199/6859/lab9a.jpg

我还必须为此实现两种不同的GUI布局。现在我想找出执行此任务的最佳方法。我的教授告诉我介绍有4种状态的元素类:
- 空的 - 不可见(在GridLayout中使用)
- 第一个字母
- 其他信件

我考虑过以下解决方案(按照List我的意思是任何类型的集合):
1.元素是单个字母,每行是Element []。游戏类将是数组Element []的数组。我猜这是最愚蠢的方式,验证可能会很麻烦 2.像之前一​​样,但Line是元素列表。游戏是一系列行。
像以前一样,但Game是一个行列表。

我应该选择哪一个?或许你有更好的想法?如果使用一个最好的集合是什么?

1 个答案:

答案 0 :(得分:2)

您的网格是您的内部数据模型(除了您将使用它之外)。这就是为什么你可以选择最适合你的那个。

我更喜欢第一个带阵列的解决方案,因为代码会更具可读性(至少对我而言)。只是比较:

grid[3][4] = element;

grid.get(3).add(4, element);

此外,如果您想使用集合,那么您可能需要使用

Map<Integer, List<Element>> grid

其中Integer-key表示行索引。使用列表列表,插入新单词非常困难(只是想想,如何仅使用列表实现这一点)。