java.util.List
替代数组元素有序
、且可重复
,集合中的每个元素都有其对应的顺序索引。ArrayList
、LinkedList
和Vector
。List除了从Collection集合继承的方法外,List 集合里添加了一些根据索引
来操作集合元素的方法。
void add(int index, Object ele)
:在index位置插入ele元素Object get(int index)
:获取指定index位置的元素Object remove(int index)
:移除指定index位置的元素,并返回此元素Object set(int index, Object ele)
:设置指定index位置的元素为ele主要实现类
ArrayList底层是Object数组
特定:查找和添加效率高;删除和插入的效率低。
对于频繁的插入或删除元素的操作,建议使用LinkedList类,效率较高。这是由底层采用链表(双向链表)结构存储数据决定的。
特有方法:
古老
的集合,JDK1.0就有了。大多数操作与ArrayList相同,区别之处在于Vector是线程安全
的。ArrayList作为默认选择
。当插入、删除频繁时,使用LinkedList;Vector总是比ArrayList慢,所以尽量避免使用。@Test
public void testListRemove() {
List list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
updateList(list);
System.out.println(list);
}
private static void updateList(List list) {
//这里的参数2, 默认指的是索引,因为如果是值的话,还得进行装箱
//装箱有消耗
list.remove(2);
}