【问题标题】:How many values can an ArrayList hold?一个 ArrayList 可以保存多少个值?
【发布时间】:2016-02-11 02:53:00
【问题描述】:

我是 Java 新手,我想知道一个数组列表可以保存多少个值。

我正在构建一个从数据库表中获取值的 android 项目(我使用 json 打印值并在 java 中调用文件),并将这些值记录在 arraylist 中。

如果我的表有 8000 条记录,arraylist 是否可以保存所有这些记录?

谢谢。

【问题讨论】:

  • 取决于您的 JVM 拥有的可用内存。
  • Arraylist 不会用完索引值。但实际上要保存这些值取决于您的表格列和您的记忆。对于一个简单的应用程序,它应该能够,但它取决于。
  • 好的,感谢您的反馈。

标签: java arraylist


【解决方案1】:

由于 Java 中的 ArrayList 由内置数组支持,因此大小限制与数组大小限制相同,即 2147483647。

由于您的项目是针对 android 平台的,因此在达到此限制之前您会耗尽内存。但是,8000 是一个相对较小的数字。如果每个单独的记录占用大量内存,您仍然可能会耗尽内存,但在您达到 ArrayList 条目数的限制之前就会发生这种情况。

【讨论】:

    【解决方案2】:

    如果您查看documentation for ArrayList,您会发现处理大小的方法(添加、创建、确定大小等)都返回int。这意味着您有 2^31-1 作为可能的最大尺寸。但是,如果您在其中存储一些重要的东西,那么您可能会在用完整数之前很久就用完内存。根据内存,8000 个元素很容易在类的能力范围内(至少在参考存储空间方面)。

    【讨论】:

      猜你喜欢
      • 2020-07-24
      • 2013-11-26
      • 2014-11-10
      • 2012-05-26
      • 2013-06-13
      • 2019-04-05
      • 2019-12-31
      • 2019-04-22
      • 1970-01-01
      相关资源
      最近更新 更多