Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions Java相关/ArrayList-Grow.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@

```

细心的同学一定会发现 :**以无参数构造方法创建 ArrayList 时,实际上初始化赋值的是一个空数组。当真正对数组进行添加元素操作时,才真正分配容量。即向数组中添加第一个元素时,数组容量扩为10。** 下面在我们分析 ArrayList 扩容时会降到这一点内容
细心的同学一定会发现 :**以无参数构造方法创建 ArrayList 时,实际上初始化赋值的是一个空数组。当真正对数组进行添加元素操作时,才真正分配容量。即向数组中添加第一个元素时,数组容量扩为10。** 下面在我们分析 ArrayList 扩容时会讲到这一点内容

## 二 一步一步分析 ArrayList 扩容机制

Expand Down Expand Up @@ -308,7 +308,7 @@ ArrayList 源码中有一个 `ensureCapacity` 方法不知道大家注意到没

```

**最好在 add 大量元素之前用 `ensureCapacity` 方法,以减少增量从新分配的次数**
**最好在 add 大量元素之前用 `ensureCapacity` 方法,以减少增量重新分配的次数**

我们通过下面的代码实际测试以下这个方法的效果:

Expand Down Expand Up @@ -344,4 +344,4 @@ public class EnsureCapacityTest {

```

通过运行结果,我们可以很明显的看出向 ArrayList 添加大量元素之前最好先使用`ensureCapacity` 方法,以减少增量从新分配的次数
通过运行结果,我们可以很明显的看出向 ArrayList 添加大量元素之前最好先使用`ensureCapacity` 方法,以减少增量重新分配的次数