3d ArrayList与堆栈的arrayList

时间:2014-03-10 21:53:40

标签: java arraylist

我正在尝试重新创建棋盘游戏。这款棋盘游戏具有4x4尺寸,可由2D arraylist表示。然而,我遇到的困难是决定实现4x4棋盘游戏的最佳方法,其中每行和每列可以容纳4个项目(以堆栈的方式,其中顶部项目是最大的int)。在这种情况下,堆栈的2D arraylist是最有效的,还是3D arraylist是要走的路。同样,我如何初始化整数的3D arraylist?谢谢!

2 个答案:

答案 0 :(得分:2)

无论哪种方式,效率都会很好,对于你需要用正方形做的事情做最简单的事情。你会用X,Y坐标来引用东西吗?那么你可能只想使用二维数组的tile,所以你可以引用一些东西

tile = board[x][y]

这假设原点位于电路板的左上角。如果这实际上是一个问题,它也非常有效。

答案 1 :(得分:0)

你问“......实施4x4棋盘游戏的最佳方法是什么......”。但似乎你现在不应该关心实施。听起来你应该关心界面。定义一个精确反映您想要表示的内容的界面:

interface Board {
    int getNumRows();
    int getNumCols();
    int getStackHeight(int r, int c);
    int getStackValue(int r, int c, int h);
 }

如前所述,效率应该不是问题,如果它成为一个问题,你可能会很高兴你可以改变你的实现而不影响游戏中的任何其他内容。