Java - 存储一堆对象并稍后遍历它们的最有效方法,其中数量未知且顺序无关紧要?

标签 java data-structures

“数量未知”是指在创建用于存储它们的任何数据结构时,我不知道最终要存储多少对象。一旦我拥有所有这些对象,我希望能够遍历所有这些对象,而访问它们的顺序无关紧要。我想知道什么是最有效的(在时间和空间上,但主要是时间)在 Java 中执行此操作的方法。

确实对事物中将存在的对象的最大数量有一个上限,所以我正在考虑只制作一个这个大小的数组。但我不想浪费空间,数组最终可能比实际存储在其中的元素数量大两倍以上。

我也在考虑 LinkedList,因为我认为迭代它可能比必须从其他东西(如 HashMap )创建迭代器并迭代它更有效。但是我不知道从各种java数据结构创建一个迭代器是多么昂贵。

那么,有什么想法吗?

最佳答案

使用 ArrayList。这将允许您毫无问题地迭代这些项目。您不会受到尺寸的过度限制,也不必提前知道有多少件商品。

关于Java - 存储一堆对象并稍后遍历它们的最有效方法,其中数量未知且顺序无关紧要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10343564/

相关文章:

algorithm - 如何降低以下算法中绘制图形的复杂性?

python - Python中多字典和列表字典以及两个列表字典的交集高效快速的数据存储和处理

java - 是否有完整的 Big-O Java 数据结构列表?

java - JTable 中对所有 NULL 数据求和的问题

java线程池任务超时问题

java - spring boot 构建包 org.junit 不存在

java - 如何读取CSV文件并对数据进行操作?

java - 在大字符串中搜索一组关键字

java - 无法运行maven项目

python - 聚类算法的编程结构