ArrayList源码解析

1.两个常用构造方法。
默认创建一个0个元素的Object数组
默认创建一个0个元素的Object数组
指定数组长度capacity
指定数组大小的构造方法
2.添加元素方法
1.set(int var1, E var2)方法在指定索引上替换元素。首先检查索引有没有越界,然后得到旧的元素,设置新值并返回旧的元素。
set替换元素
2.add(E var1)方法首先检查是否需要扩容,然后在数组尾部添加元素。



如果创建的List没有指定大小并且第一次添加元素则默认扩容为十个元素,否则如果集合size+1超过数组长度,就会进行扩容。

具体扩容会扩容到原数组长度1.5倍,并且进行数组元素的拷贝。

3.add(int var1, E var2)方法在只当数组索引位置添加元素,同样进行检查扩容以及数组拷贝。set方法是进行元素替换,不会造成size++

3.移除元素方法
1.remove(int var1)移除指定索引上的元素。会造成数组元素移动

2.remove(Object var1)移除指定对象,会进行遍历找到匹配的对象并移除。
这个方法一旦找到匹配元素就会return,不会继续查找。

发布了7 篇原创文章 · 获赞 0 · 访问量 84
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览