【发布时间】:2017-11-01 08:48:00
【问题描述】:
我搜索了 ArrayList 容量问题,但找不到完整的答案。所以在这里再问一次。
我知道我们在 ArrayList 中添加元素的数量和容量是我们可以在该列表中放入多少数据,默认值为 10。
所以这里的问题是在声明是否给予这样的能力
List<String> list = new ArrayList<>(1);
然后我也可以继续添加最多 10 或 20 个元素。 那么这个容量声明是否仅对达到容量时发生的内部重新分配有用?
或者通过给出容量限制,我们可以只限制添加元素的那一点吗?
【问题讨论】:
-
So is this capacity declaration useful only to internal reallocation which happens when it reaches the capacity阅读javadocs -
嗯,你的测试回答了这个问题,不是吗?由于您能够添加超过 1 个元素,因此它不可能是第二个选项。 javadoc也回答了它。为什么不读呢? docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html : 容量是用于存储列表中元素的数组的大小。它总是至少与列表大小一样大。随着元素被添加到 ArrayList,它的容量会自动增长
标签: java arraylist collections