java如何创建一个类来处理多维arraylist
在我搜索多维arraylist信息的过程中,我了解到可以创建一个类来处理多维arraylist
我正在做一个类似于Bejeweld的Android游戏,我想这会更好,而不是使用一个通用的多维网格!?我还有一个所有sprite对象的列表,我想知道是否可以用多维arraylist类存储和控制所有这些对象
但是我不确定一个类会是什么样子,以及如何从ArrayList中设置和获取值?有没有人有兴趣解释它是如何工作的,并展示一个简单的代码示例?谢谢
编辑:我希望在ArrayList中有对象,如本例int grid[][] = new int[8][8];
,但我希望有对象,而不是整数。我想知道是否有可能像我刚才展示的例子一样轻松地获取和设置值
编辑2:我有一个网格8x8,这就是为什么我使用像[8][8]这样的数组,但我只能在每个位置有整数或布尔类型的值。我还必须使用arraylist来处理在这个网格中有一个位置的所有64个对象。每个对象在网格阵列和屏幕上存储其位置。我只是想让处理和创建一个带有多维arrayList的网格变得更简单一点,这样既可以存储对象,又可以有一个网格?有没有更好的方法
# 1 楼答案
编辑:
如果要使用特定的类。对于ex:
Node
,您可以使用List<List<Node>>
而不是List<List<Integer>>
,然后访问它。然后,您可以调用Node
类的任何方法,如下所示:# 2 楼答案
首先从定义多维arrayList开始
然后初始化它
现在您有了一个带有类实例的
size
xsize
数组列表要访问它:
如果要将某个位置上的对象替换为另一个实例,则需要先删除旧对象:
# 3 楼答案
ArrayList和array之间没有太大区别
ArrayList只有两个优点:
对于多维数组,另一个优点是嵌套数组列表可能有不同的长度
在您的情况下,我认为您不需要这些,所以如果您不知道如何制作ArrayList of ArrayList,但知道如何使用ArrayList,请选择一个您觉得更舒服的
但我只是想回答你的问题
使用多维数组:
# 4 楼答案