好程序员Java教程分享List接口,List本身是Collection接口的子接口,具备了Collection的所有方法。现在学习List体系特有的共性方法,查阅方法发现List的特有方法都有索引,这是该集合最大的特点。

  List:有序(元素存入集合的顺序和取出的顺序一致),元素都有索引。元素可以重复。

  |--ArrayList:底层的数据结构是数组,线程不同步,ArrayList替代了Vector,查询元素的速度非常快。

  |--LinkedList:底层的数据结构是链表,线程不同步,增删元素的速度非常快。

  |--Vector:底层的数据结构就是数组,线程同步的,Vector无论查询和增删都巨慢。

  1,添加:

  add(index,element):在指定的索引位插入元素。

  addAll(index,collection):在指定的索引位插入一堆元素。

  2,删除:

  remove(index):删除指定索引位的元素。返回被删的元素。

  3,获取:

  Objectget(index):通过索引获取指定元素。

  intindexOf(obj):获取指定元素第一次出现的索引位,如果该元素不存在返回-1;

  所以,通过-1,可以判断一个元素是否存在。

  intlastIndexOf(Objecto):反向索引指定元素的位置。

  ListsubList(start,end):获取子列表。

  4,修改:

  Objectset(index,element):对指定索引位进行元素的修改。

  5,获取所有元素:

  ListIteratorlistIterator():list集合特有的迭代器。

  List集合支持对元素的增、删、改、查。