ArrayList
ArrayList:

构造器:

看一下add方法:

初始化最小大小为10:


当add之后的size大于当前数组长度的时候进行一次扩容:

新的数组大小是原数组大小的1.5倍。最后Arrays.copyOf到新的数组。
看一下迭代器:

在next的时候会比较最新modcount和初始化时候的区别,有区别说明修改过抛出异常,乐观锁。
在用remove的时候重新赋值expectedModCount。

第一种不会有异常 第二种有 第三种无
边遍历边删除:
https://www.jianshu.com/p/0c76e12f77de
总结:
- 默认大小是10
- add之后的size大于当前数组长度的时候
- grow时新的大小是之前的1.5倍

浙公网安备 33010602011771号