ArrayList和Vector之间的区别

ArrayList和Vector都实现List接口并维护插入顺序。
但是, 下面给出的ArrayList和Vector类之间有很多区别。

数组列表 向量
1)ArrayList不同步。 向量已同步。
2)如果元素数量超出其容量, ArrayList将增加当前数组大小的50%。 向量递增100%表示如果元素总数超过其容量, 则数组大小增加一倍。
3)ArrayList不是遗留类。它是在JDK 1.2中引入的。 Vector是一个遗留类。
4)ArrayList快速, 因为它是不同步的。 向量很慢, 因为它是同步的, 即在多线程环境中, 它使其他线程处于可运行或不可运行状态, 直到当前线程释放对象的锁为止。
5)ArrayList使用Iterator接口遍历元素。 Vector可以使用Iterator接口或Enumeration接口遍历元素。
ArrayList和Vector之间的区别

文章图片
Java ArrayList的示例
【ArrayList和Vector之间的区别】让我们看一个简单的示例, 其中我们使用ArrayList来存储和遍历元素。
import java.util.*; class TestArrayList21{ public static void main(String args[]){List< String> al=new ArrayList< String> (); //creating arraylist al.add("Sonoo"); //adding object in arraylist al.add("Michael"); al.add("James"); al.add("Andy"); //traversing elements using Iterator Iterator itr=al.iterator(); while(itr.hasNext()){ System.out.println(itr.next()); } } }

立即测试
输出:
Sonoo Michael James Andy

Java Vector的示例
让我们看一个使用Enumeration接口的Java Vector类的简单示例。
import java.util.*; class TestVector1{ public static void main(String args[]){ Vector< String> v=new Vector< String> (); //creating vector v.add("umesh"); //method of Collection v.addElement("irfan"); //method of Vector v.addElement("kumar"); //traversing elements using Enumeration Enumeration e=v.elements(); while(e.hasMoreElements()){ System.out.println(e.nextElement()); } } }

立即测试
输出:
umesh irfan kumar

    推荐阅读