由于ArrayList是List的具体实现类 , 因此 , 其中的许多方法都是继承自List类和Collection接口 , 方法主要分为增删改查四大类
在存储上 , ArrayList属于线性存储 , 元素按存入的顺序排列 , 在查询上效率较高 , 在增删上效率不高.
即可以存入自定义数据类型 , 也可以存入基本数据类型 , 但是在存入时 , 应当遵循泛型安全机制 即必须给出插入的元素的类型
例如 :
ArrayList <String> cList = new ArrayList() ;
如果存入的元素大于ArrayList的长度 , ArrayList会在内存中分配一些更大的数组来存储 , 更大数组的长度依据扩容算法进行分配 (扩容算法将在最后介绍)
下面给出常用方法
①增系列.
方法 | 功能 |
---|---|
void add (Object o) | 向集合中添加一个元素 |
boolean addAll(int , Collection); | 向指定索引出插入参数二集合中所有元素 |
void add(int , Object) | 向指定索引处插入元素 |
②查系列
方法 | 功能 |
---|---|
boolean isEmpty() | 判断集合是否为空 |
boolean contains(Object o) | 判断是否含某元素 |
boolean containsAll(Collection c) | 判断是否含有c集合中的所有元素 |
Object get(int index) | 返回集合索引的元素 |
int indexOf (Object o) | 返回o对象第一次出现的索引 |
③删系列
方法 | 功能 |
---|---|
void clear() | 清空集合 |
boolean remove(Object o) | 删除指定对象 |
boolean remove(Collection c) | 删除集合c中的所有元素 |
方法 | 功能 |
---|---|
Object remove(int index) | 删除索引处元素 |
④改系列
Object set(int index , Object o); //讲index处元素换为 o
扩容算法
还没看懂 , 看懂再写