1.线性表的特点
线性表的特点就像他的名字中出现的“线性”二字,像一条线,除了第一个元素和最后一个元素,每一个元素都有唯一的前驱和唯一的后继。实现线性表可以有两种方式,一是利用数组做成顺序表,二是利用结点做成链表,这里讲的是用数组实现。
2.线性表的实现
在实现之前我们先看一下这个类所要实现的接口:
接下来我们正式实现顺序表,首先就要把他的属性列出来
private static int DEFAULT_CAPACITY = 20;//默认数组长度
private int size;//元素个数
private E[] data;//元素容器
size表示线性表中元素的个数,data这个数组就存的是元素,为什么要把他定义成E这样的数据类型呢,因为实现我们不知道用户要给里面存放什么样的数据,所以要支持泛型。
实现构造方法:
public ArrayList() {
this(DEFAULT_CAPACITY);
}
public ArrayList(int capacity) {
if(capacity <= 0)
throw new IllegalArgumentExcepti