区别
List集合和Set集合的区别
ArrayList | Vector | LinkedList | |
底层结构 | 数组结构 | 数组结构 | 链表结构 |
空间占用 | 存储区间连续 占用空间大,空间复杂度大 |
存储区间连续 占用空间大,空间复杂度大 |
存储区间离散 占用宽松,空间复杂度小 |
特点 | 查询快,增删慢 | 查询块,增删慢 | 查询慢,增删块 |
安全性 | 不安全,不同步,效率高 | 安全的,同步的,效率低 | 不安全,不同步,效率高 |
ArrayList
底层通过数组的方式存储元素,不同步、不安全、效率高、查询快、增删慢。
使用的方法都是Collection集合和List集合里面继承的方法。
import java.util.ArrayList;
import java.util.Iterator;
public class ArrayListDemo {
public static void main(String[] args) {
// 创建集合对象
ArrayList list = new ArrayList();
// 添加元素
list.add("hello");
list.add("world");
list.add("java");
// 遍历
// 获取迭代器
Iterator it = list.iterator();
while (it.hasNext()) {
String s = (String) it.next();
System.out.println(s);
}
System.out.println();
// 普通for循环遍历
for (int x = 0; x < list.size(); x++) {
String s = (String) list.get(x);
System.out.println(s);
}
}
}
构造方法
ArrayList()
构造一个初始容量为十的空列表。根据需要自动增加容量。每次添加都会先检查是否需要扩容。
ArrayList(int initialCapacity)
构造具有指定初始容量的空列表。
注意: