ArrayList可以容纳多少个值?

时间:2016-02-11 02:53:00

标签: java arraylist

我是Java的新手,我想知道arraylist可以拥有多少值。

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

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

谢谢。

2 个答案:

答案 0 :(得分:4)

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

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

答案 1 :(得分:2)

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