List接口常用方法:
void add(int index, Object element)
将元素element插入List的索引 index处
boolean addAll(int index,Collection c)
将集合c包含的所有元素插入List集合的索引index处
Object get(int index)
返回集合索引index处的元素
Object remove(int index)
删除索引index处的元素
Object set(int index, Object element)
将索引index处的元素替换成element 对象,并将替换后的元素返回
int indexOf(Object o)
返回对象o在List中第一次出现的索引
int lastIndexOf(Object o)
返回对象o在List中最后一次出现的索引
List subList(int fromIndex, int tolndex)
返回从索引fromIndex(包括)到 toIndex(不包括)的所有元素组成的子集合
注:List 接口的所有实现类都可以通过以上的方法操作集合元素。
ArrayList
ArrayList 是一个List接口的实现类,也是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。
由于ArrayList 的底层是使用一个数组存储元素,在增加或删除指定位置的元素时,会创建新的数组,效率比较低,因此Arraylist集合不适合做大量的增删操作,而适合元素的查找。
LinkedList
ArrayList 在查询元素时速度很快,但在增删元素时效率较低。为了克服这种局限性,可以使用List 接口的另一个实现类LinkedList。LinkedList内部维护了一个双向循环链表,链表中的每一个元素都使用引用的方式记录它的前一个元素和后一个元素,从而可以将彼此的元素连接起来。因此LinkedList增删效率非常高。
LinkedList特有的方法
void add(int index, E element)
在当前集合的索引 index处插入元素 element
void addFirst(Object o)
将指定元素。插入当前集合的开头
void addLast(Object o)
将指定元素。添加到当前集合的结尾
Object getFirst()
返回当前集合的第一个元素
Object getLast()
返回当前集合的最后一个元素
Object removeFirst()
移除并返回当前集合的第一个元素
boolean offer(Object o)
将指定元素o添加到当前集合的结尾
boolean offerFirst(Object o)
将指定元素o添加到当前集合的开头
boolean offerLast(Object o)
将指定元素o添加到当前集合的结尾
Object peekFirst()
获取当前集合的第一个元素
Object peekLast()
获取当前集合的最后一个元素
Object pollFirst()
移除并返回当前集合的第一个元素
Object pollLast()
移除并返回当前集合的最后一个元素
void push(Object o)
将指定元素o添加到当前集合的开头