P260 list集合介绍
- collection下面的两个孩子,list和set
list继承了collection,有序集合,有索引,允许有重复
- 有序:存储和取出的顺序一直
- 有索引:包含了一些带index的方法
list中带索引的方法(注意防止越界异常)
public void add(int index,E element);//将指定的元素,添加到集合中的指定位置上
public E remove(int index);//返回的是被【移除的元素】
public E set(int index,E element);//用指定元素替换集合中指定位置的元素,返回的是被替换的元素
public
复习一下增强for循环:
for(String s:list){
sout(s);
}
List的子类
ArrayList集合
- list接口的大小可变数组的实现,实现了所有可选列表操作
- 除了实现list接口外,还提供一些方法操作内部用来存储列表的数组的大小
- 实现不是同步的===》多线程
特点:
- 数据存储的结构是数组
- 元素增删慢
- 但是查找很快
LinkList集合
- 底部是链表结构
- 增删快
- 查找慢
- 但是头尾元素好查找,包含了大量首尾元素的相关方法
-
addFirst()/addLast()等相关方法
**pop()==removeFirst()**删掉第一个
**push()==addFirst()**加上一个第一个
addLast()==add()
addFirst()应用(即pop):
getFirst()
getLast()
clear()后清空了所有元素,如果再获取集合元素会抛出NoSuchElement异常
vector
- 实现可增长的【对象数组】
- 与新collection不同:单线程==》慢一些
- 添加元素的方法:addElement()----(原版无add)