标签:des 可变 开发 loading row object 方法 线程 ret
1.ArrayList底层结构和源码分析
ArrayList的全面说明
1) Resizable-array implementation of the List interface [ArrayList实现了List的接口,底层是一个数组,并实现可变的功能.]
ArrayList 属性 : transient
Object[] elementData;
2)
Implements
all optional list operations [ArrayList实现了List所有的操作。
3) permits all elements, including null [ArrayList 可以添加任意的元素,包括null]
4) this class provides methods to manipulate the size of the array that is used internally to store the list[ArrayList的数据是保存到array ]
5) This class is roughly equivalent to Vector, except that it is unsynchronized [ArrayList 和Vector基本相同,除了Vector是线程同步的,ArrayList不是线程同步.]
2. Vector底层结构和ArrayList的比较
Vector的基本介绍
1) Vector类的定义说明
2) The Vector class implements a growable array of objects [Vector底层也是一个可变对象数组]
3) Vector 是线程同步的,即线程安全, Vector类的操作方法带有synchronized
public synchronized E get(int index) {
if (index >= elementCount)
throw new ArrayIndexOutOfBoundsException(index);
return elementData(index);
}
4) 在开发中,主要使用ArrayList ,只有在确实需要线程同步安全时,才考虑使用Vector(坦克大战)
3.LinkedList
标签:des 可变 开发 loading row object 方法 线程 ret
原文地址:https://www.cnblogs.com/-xuewuzhijing-/p/13187062.html