Java中除了链表之外还有无界列表吗?我必须将 BLOB 对象存储在列表中。我目前正在使用 arrayList,但我担心当列表大小增加时,arraylist 可能无法存储(可能达到最大容量)。我想过使用链表,但它看起来效率不高。
问问题
1663 次
3 回答
6
ArrayList
没有任何大小限制——它会扩大到适合您添加到其中的元素的大小。
ArrayList
可能在技术上限制为 2^31-1 个值 - 或大约 20 亿个元素 - 但您首先会用完 RAM。
于 2012-11-01T00:14:04.307 回答
0
请注意,Java 中有数十种 Collection 实现,完全取决于您的需求。例如,ArrayList 没有有效的大小限制,因为在达到最大大小之前您将遇到 OutOfMemoryError。在决定之前结帐集合页面。
于 2012-11-01T00:22:55.717 回答
0
当列表的大小增加时,arraylist 可能无法存储(因为它的大小限制)。
什么尺寸限制?
List<Blob> blobs = new ArrayList<Blob>();
您只受到可以分配给 JVM 的内存量的限制,或者正如 yshavit 在下面正确指出的那样,索引的最大整数值。
于 2012-11-01T00:14:12.727 回答