> 文章列表 > 【Java集合框架】篇三:List接口

【Java集合框架】篇三:List接口

【Java集合框架】篇三:List接口

1. List接口及主要实现类特点

List:有序、可重复(“动态”数组);因而常常使用List替换数组,因为List 的容量是动态的。

  • ArrayList:底层使用Object[]存储

    • 线程不安全,
    • 添加、查找效率高
  • LinkedList:底层使用双向链表存储

    • 插入、删除效率高
  • Vector:太古老,jkd1.0才使用,不介绍,

    • 线程安全,效率低

2. List常用方法

系列一

Collection中的方法List都可以使用,因为List是Collection的子接口

系列二

因为List是有序的,进而就有了索引,所以就会增加一些多索引操作的方法:

插入元素

  • void add(int index, Object ele):在index位置插入ele元素
  • boolean addAll(int index, Collection eles):从index位置开始将eles中的所有元素添加进来

获取元素

  • Object get(int index):获取指定index位置的元素
  • List subList(int fromIndex, int toIndex):返回从fromIndex到toIndex位置的子集合

获取元素索引

  • int indexOf(Object obj):返回obj在集合中首次出现的位置
  • int lastIndexOf(Object obj):返回obj在当前集合中末次出现的位置

删除和替换元素

  • Object remove(int index):移除指定index位置的元素,并返回此元素
  • Object set(int index, Object ele):设置指定index位置的元素为ele