在我们之前的学习中,我们已经接触到了数组,在Java里,使用数组解决问题是十分高效的;但是,我们知道,数组一但被初始化时候,那么他的长度就不能再改变了;即数组是静态的。
我们在数据结构这里引进可一种新型的结构——ArrayList。ArrayList就是传说中的动态数组,我们可以把它看作是Array的复杂版本,在我们使用的过程中,他可以为我们带来更好的使用:比如说:
- 我们可以动态的增加、减少元素;
- 我们可以灵活的设置数组的大小;
- 实现了Collection和list接口在使用时更简单。
ArrayList的使用
1. ArrayList的构造
ArrayList() | 无参构造 |
ArrayList(Collection<? extends E> c) | 利用其他 Collection 构建 ArrayList |
ArrayList(int initialCapacity) | 指定顺序表初始容量 |
public static void main(String[] args) {
// 1.无构造参数
List<Integer> list = new ArrayList<>();
// 2.构造一个指定顺序表初始容量
List<Integer> list1 = new ArrayList<>(10);
list1.add(1);
list1.add(2);
list1.add(3);
// 3.list2,list3构造好后,与list2一致
ArrayList<Integer> list2 = new ArrayList<>(list1);
List<Integer> list3 = new ArrayList<>(list1);
// 4.注意:不要忘记<>里的类型
}
2. ArrayList常见的方法
方法 | 解释 |