Vector类和ArrayList类的用法几乎一模一样,底层都是采用了数组结构,很多情况下可以互用。只不过Vector类的方法都加了同步检查,因此“线程安全,效率低”。
比如:add(Object o)方法就增加了synchronized同步标记。
相比较于ArrayList,Vector还包含了许多传统的方法,虽然这些方法不属于集合框架。
【示例】Vector类传统方法演示
public class Test {
public static void main(String[] args) {
// 实例化一个Vector
Vector<String> vector = new Vector<String>();
// 添加元素,addElement()方法和add()方法类似
vector.addElement("java");
vector.addElement("HTML");
vector.addElement("JavaScript");
vector.addElement("CSS");
// 遍历集合, elements()方法类似于iterator()方法
Enumeration<String> elements = vector.elements();
while(elements.hasMoreElements()) {
System.out.println(elements.nextElement());
}
}
}
**【新手建议】**如何选用ArrayList、LinkedList、Vector?
- 需要保证线程安全时,建议选用Vector。
- 不存在线程安全问题时,并且查找较多用ArrayList(一般使用它)。
- 不存在线程安全问题时,增加或删除元素较多用LinkedList。
ps:如需最新的免费文档资料和教学视频,请添加QQ群(627407545)领取。