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接口遍历元素。 |
文章图片
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
推荐阅读
- Comparable和Comparator之间的区别
- ArrayList和LinkedList之间的区别
- Java Comparator接口
- Java Comparable接口
- Java中的集合
- Java WindowListener接口
- Java MouseMotionListener接口
- Java MouseListener接口
- 39个无需注册的最佳免费电子书下载网站推荐合集