|
|
|
|
-
-
[例句]Sometimes reality and fantasy are hard to distinguish.
-
有时候现实和幻想很难区分。
-
-
-
-
DEFAULTCAPACITY_EMPTY_ELEMENTDATA 属性上面注释简要解释:我们定义了一个空数量的实例 用Object []数组接收,用来辨别当第一个插入元素进来的情况。
-
上面3 红色框定义的变量分别为:ArrayList 数组默认容量,空的元素数组对象,默认容量的空的元素数组,元素对象(transient关键字)
-
-
-
假如第一个元素添加进来就是用默认容量10,当大于10的扩容1.5倍数,当大于(最大整型值-8)最大容量
-
为啥最大容量是 这个呢?
-
JVM要存头部字节在数组里面,要占用8个字节
-
-
以后就考虑溢出,否则使用大于的值,要不就是用整形最大值 2^31次方 为容量
-
-
最后把Arrays.copy(原始数组对象,新的长度)
-