今天正好看到了這個東西,一直都是看別人的資料,決定自己親自看看源代 碼。JDK版本為 6.0_04 的
1 聲明沒有任何區別
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable;
public class Vector<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable;
2 構造器方法,默認都是10個初始化容量。Vector帶每次增加容量的參數
public ArrayList(int initialCapacity);
public Vector(int initialCapacity);
public Vector(int initialCapacity, int capacityIncrement);
3 add等方法,Vector是同步的方法
ArrayList
public boolean add(E e);
Vector
public synchronized boolean add(E e);
4 尺寸和長度,私有變量不同。
ArrayList.size;
Vector.elementCount;
5 其它方法
Vector 比ArrayList方法多,不過一部分是重復的
public synchronized void copyInto(Object[] anArray);
public synchronized void setSize(int newSize);
public synchronized int capacity();
public Enumeration<E> elements();
public synchronized E elementAt(int index);
public synchronized E firstElement();
public synchronized E lastElement();
public synchronized void setElementAt(E obj, int index) ;
public synchronized void removeElementAt(int index);
public synchronized void insertElementAt(E obj, int index);
public synchronized void addElement(E obj);
public synchronized boolean removeElement(Object obj);
public synchronized void removeAllElements();
原文地址:http://www.java2000.net/p9750