gus*_*afc 51
这取决于List
实施.由于您使用int
s 索引数组,ArrayList
因此不能容纳多个Integer.MAX_VALUE
元素.但是,A LinkedList
不以相同的方式限制,并且可以包含任何数量的元素.
Boz*_*zho 22
它取决于实现,但List
接口没有定义限制.
然而,接口定义了size()
返回的方法int
.
返回此列表中的元素数.如果此列表包含多个
Integer.MAX_VALUE
元素,则返回Integer.MAX_VALUE
.
所以,没有限制,但到达后Integer.MAX_VALUE
,列表的行为改变了一下
ArrayList
(标记的)由数组支持,并且限于数组的大小 - 即 Integer.MAX_VALUE
aio*_*obe 12
Java中的java.util.List中最多可以添加多少数据?
这与可以存储在HashMap中的键(对象)数量的理论限制非常相似?
文档java.util.List
没有明确记录对元素最大数量的任何限制.List.toArray
然而,文件说明......
以适当的顺序返回包含此列表中所有元素的数组(从第一个元素到最后一个元素); 会忠实地实施某些方法,例如
......严格来说,如果列表中有超过2 31 -1 = 2147483647个元素,则不可能忠实地实现此方法,因为这是最大可能的数组.
有人会争辩说size()
...... 的文件
返回此列表中的元素数.如果此列表包含多个
Integer.MAX_VALUE
元素,则返回Integer.MAX_VALUE
.
...表示没有上限,但此视图会导致许多不一致.请参阅此错误报告.
数组列表是否有默认大小?
如果您指的是ArrayList
那么我会说默认大小为0.但是默认容量(您可以插入的元素数量,而不强制列表重新分配内存)是10.请参阅默认构造函数的文档.
大小限制ArrayList
是Integer.MAX_VALUE
因为它由普通数组支持.
java.util.List
是一个界面.列表可以容纳多少数据取决于您选择使用的List的具体实现.
通常,List实现可以包含任意数量的项目(如果使用索引列表,则可能限于Integer.MAX_VALUE
或Long.MAX_VALUE
).只要你的内存不足,List就不会变得"满"或任何东西.
归档时间: |
|
查看次数: |
106993 次 |
最近记录: |