【发布时间】:2017-11-06 09:48:01
【问题描述】:
最近我一直在 Eclipse 中为一个项目制作 Bukkit Minecraft 插件,并且我一直在使用数组列表来存储玩家对象。在尝试优化我的代码后,我意识到还有另一种方法可以使用 java Collection 定义所述对象列表。现在我有了基础知识,即集合与数组列表不同,它不允许您根据索引引用变量,但我没有在我的代码中使用它,所以我想知道关于 CPU 是否还有其他优势还是内存使用? 注意*我确实知道通过将变量作为 Collection 传递,可以更容易地将其转换为其他形式的列表,但我相信我不会在我的代码中这样做,所以我不会认为这是一个优势.
【问题讨论】:
-
ArrayList在内存使用方面是最有效的集合之一(它本质上是一个引用数组) - 我不确定在切换到其他东西时你期望在这方面获得什么. -
这整个问题是基于一个基本的误解。
Collection是一个接口而不是一个类,这使得关于Collection的 CPU 和内存性能的问题毫无意义。我建议您花时间阅读 Java 教程或 Java 教科书。从长远来看,它将为您节省时间。
标签: java arraylist collections