【发布时间】:2017-01-30 05:33:32
【问题描述】:
当我们使用 new ArrayList() 时,内存是连续分配的吗? 如果我们调用 list.add(e) 10 次,是所有连续的元素都按添加顺序存储在内存中,还是随机存储在内存中?
谢谢。
【问题讨论】:
-
你为什么在乎?如果您必须知道,请阅读以下内容:grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/…GrepCode 是此类问题的朋友。
-
嗯,
ArrayList是基于 Java 数组的。并且 Java 数组不能保证在内存中是连续的。但为什么这很重要。 -
我原以为答案将是特定于操作系统的
-
@JimGarrison 当然,一个彻底的心智模型总是一件好事?或者,单纯的好奇?知道答案有助于彻底掌握,例如,简单数组和内存中的 ArrayList 之间的区别。