【文件属性】:
文件名称:java8源码-csn-list:ArrayList、LinkedList、Vector、Stack源码分析
文件大小:64KB
文件格式:ZIP
更新时间:2021-06-04 18:58:07
系统开源
java8
源码
List相关实现类的源码解析(JDK1.8)
2018.9.22-
List的架构图
ArrayList
继承关系:
ArrayList
->
AbstractList
实现
List接口
ArrayList
是一个数组队列,相当于
动态数组。与Java中的数组相比,它的容量能动态增长。不是线程安全的。ArrayList包含了两个重要的对象:elementData(Object[]类型的数组)
和
size
遍历ArrayList时,使用随机访问(即,通过索引序号访问)效率最高
转数组:Integer[]
newText
=
v.toArray(new
Integer[v.size()])
Fail-Fast机制
fail-fast
机制是java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail-fast事件。
通过modCount的值来判断是否多线程同时操作,modCount用来记录List修改的次数:每修改一次(添加/删除等操作),将modCount+1
LinkedList
继承关系:
LinkedLis
【文件预览】:
csn-list-master
----.gitignore(268B)
----.mvn()
--------wrapper()
----src()
--------main()
--------test()
----pom.xml(2KB)
----README.md(5KB)