java - 创建列表数组

标签 java arrays list

有没有办法在Java中组合列表和数组?我将图 block map 的数据存储在 2D 数组而不是 2D 列表中,因为这样我可以为它们定义设定的大小。到目前为止它是有效的,因为每个位置都有一个图 block ,并且只能有一个对象占据它。现在我想向单个图 block 添加多个效果,但Java不允许创建带有泛型的数组,因此没有ArrayList[][]。如果每个图 block 都是它自己的对象,它可能只有自己的效果数组列表,但我真的想避免这种情况。另外我不知道每个图 block 可能有多少效果,所以我不能只定义一个 3D 数组。

有关如何解决此问题的任何建议。我想要更多面向设计的建议,而不是通过黑客来解决数组/泛型问题。

最佳答案

我认为更加面向对象的方法比复杂的嵌套结构更适合您。

将您想要的内容封装到一个可以用更简单的东西维护的单个对象中。我发现你的方法变得迟钝并且很难很快遵循。

如果每个稀疏条目都保留其在网格中的(i, j) 位置及其状态,则可以维护单个稀疏条目List

关于java - 创建列表数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16995556/

相关文章:

java - Vaadin:限制可用的 RichTextArea 格式选项

java - 字符显示/搜索 Unicode 字符

php - 在数组中查找最后一个非零值

javascript - 如何在 javascript 中镜像多维数组?

java - 为什么我只能在 while 循环之外获取数组的最后一个元素

java - 解析日期字符串时出错

Java 命名指南(特定类类型命名 - 不是约定)

python - 比较 3 个不同列表的位置和元素

python列表索引是同一个列表

python - 如何将列表中的所有元素相互相乘?