ArrayList 源码

Posted junbaba

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ArrayList 源码相关的知识,希望对你有一定的参考价值。

技术图片

 

 技术图片

 

 继承关系上:

继承了abstractList,实现了List,提供了相关的添加,删除,修改,遍历等功能。

实现了RandomAccess接口,提供了随机访问功能。

实现了Cloneable接口,覆盖了函数clone() 

实现了Seriable接口,支持序列化

ArrayList 操作不是线程安全的,所以所以建议在单线程中使用,多线程里使用Vector 或者 CopyOnWriteArrayList 

主要讲几个方法:

1 构造方法

ArrayList():构造一个初始容量为10的空列表

ArrayList(Collection<?extend E> c):构造一个包含指定元素的列表

ArrayList( int initialCapcity ):构造一个具有初始容量值得空列表

技术图片

 

 技术图片

 

 2 add 方法

add(E e):添加一个元素到列表的末尾。

add( int index, E element ) :在指定的位置添加元素

addAll( Collection<? extends E> c ):添加一个集合到元素的末尾.以上返回类型是

booleanensureCapcity(int minCapcity):确保列表中含有minCapcity的最小容量

技术图片

 

 技术图片

 

 技术图片

 

 技术图片

 

 3 remove()

技术图片

 

 技术图片

 

 技术图片

 

 技术图片

 

 

4 get()

技术图片

 

 

技术图片

 

以上是关于ArrayList 源码的主要内容,如果未能解决你的问题,请参考以下文章

Java小白集合源码的学习系列:ArrayList

JDK源码ArrayList 源码分析

ArrayList源码简析

List源码解析之ArrayList源码分析

Java-ArrayList源码分析

ArrayList源码解析