除了链表之外,Java中还有其他的无界列表吗?我必须将BLOB对象存储在一个列表中。我目前正在使用arrayList,但我担心当列表的大小增长时,arraylist可能无法存储(可能达到最大容量)。我想过使用链表,但它看起来效率不高。
发布于 2012-11-01 08:14:04
ArrayList没有任何大小限制--它会尽可能地扩展,以适应您添加到其中的元素。
从技术上讲,ArrayList可能被限制为2^31-1个值--或者大约20亿个元素--但是首先会用完内存。
发布于 2012-11-01 08:14:13
当列表的大小增长时,
数组列表可能无法存储(由于其大小限制)。
大小限制是多少?
List<Blob> blobs = new ArrayList<Blob>();您只受到可以分配给JVM的内存量的限制,或者,正如yshavit在下面正确指出的,索引的最大整数值。
发布于 2012-11-01 08:22:56
请注意,Java中有几十种Collection实现,这完全取决于您的需求。例如,ArrayList没有有效的大小限制,因为在达到最大大小之前会有OutOfMemoryError。在决定之前先检查Collections page。
https://stackoverflow.com/questions/13169226
复制相似问题