Java
中数组用来存储数据的局限性
List
集合类中
元素有序、且可重复
,
集合中的每个元素都有其对应的顺序索引。
List容器中的元素都对应一个整数型的序号记载其在容器中的位置,
可以根据序号存取容器中的元素。
JDK API
中
List
接口的实现类常用的有:
ArrayList(Main)
、
LinkedList
和
Vector
。
l
List
集合里添加了一些根据索引来操作集合元素的方法
Ø
void add(
int
index,Object
ele
)
Ø
boolean
addAll
(
int
index, Collection
eles
)
Ø
Object get(
int
index)
Ø
int
indexOf
(Object
obj
)
Ø
int
lastIndexOf
(Object
obj
)
Ø
Object remove(
int
index)
Ø
Object set(
int
index, Object
ele
)
Ø
List
subList
(
int
fromIndex
,
int
toIndex
)
增 add(obj)
删 remove(index)
改 set(index, obj)
查 get(index)
插 add(index, obj)
长度 size()
List实现类之一:ArrayList
l
ArrayList
是
List
接口的典型实现类
l
本质上,
ArrayList
是对象引用的一个变长数组
l
ArrayList
是线程不安全的,而
Vector
是线程安全的,
即使为保证
List
集合线程安全,也不推荐使用
Vector
l
Arrays.asList
(…)
方法返回的
List
集合
既
不是
ArrayList
实例,
也不是
Vector
实例。
Arrays.asList
(…)
返回值是一个固定长度的
List
集合