基于数组(Array)的List,其实就是封装了数组所不具备的一些功能方便我们使用,所以它难易避免数组的限制,同时性能也不可能超越数组。所以,在可能的情况下,我们要多运用数组。另外很重要的一点就是Vector是线程同步的(sychronized)的,这也是Vector和ArrayList 的一个的重要区别。
一、特征
数组实现、 线程同步 (线程安全)
Vector和ArrayList的实现方式可以看出非常的类似,既然Vector类建议尽量少的使用,还是最好不要用了,通过上面的源码发现,每个方法中都添加了synchronized的关键字来保证同步,所以它是线程安全的,但正是这些方法的同步,让它的效率大大的降低了,比ArrayList的效率要慢。
二、CRUD
1. 构造函数
Vector() | //创建一个默认的向量,默认大小为 10 |
---|---|
Vector(int size) | //创建指定大小的向量 |
Vector(int size,int incr) | //创建指定大小的向量,并且增量用 incr 指定 |
Vector(Collection c) | //创建一个包含集合 c 元素的向量 |