1 继承,实现
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable {
2 结构
数组
3 源码分析
add();
public boolean add(E e) { ensureCapacityInternal(size + 1); // Increments modCount!! //扩容 elementData[size++] = e; return true; }
get();
public E get(int index) { rangeCheck(index); //数组越界检查 return elementData(index); //获取元素 }
4 结论
1 list是一个动态数组
2 本质是一个array