List接口对Collection进行了简单的扩充。
它的具体实现类常用的有ArrayList和LinkedList。
ArrayList从其命名中可以看出它是以一种类似数组的形式存储,因此它的随机访问速度极快,但插入和移除元素的速度很慢。
LinkedList的内部实现是链表,它适合于在链表中间需要频繁进行插入和删除操作,不适合随机访问,LinkedList可以当作堆栈、队列和双向队列使用。
一个List可以生成ListIterator,使用它可以从两个方向遍历List,也可以从List中间插入和删除元素。ListIterator只应该用来由后向前遍历ArrayList,而不是用来插入和删除元素。
下面以ArrayList为例,介绍一下List中的基本方法:
1、添加方法:add(e); 有顺序的依次从下标0往后添加
例如:
add(index,e); 插入到指定的index位置
2、删除指定位置的元素
remove(index);
3、获取指定位置的元素
get(index);
4、修改指定位置的元素
set(index,e);
5、获取元素的位置
indexOf(e);
6、获取子列表
subList(fromindex,toindex);
以下为完整代码: