//記錄元素的陣列
protected object elementdata;
//上面陣列的空間長度
protected int elementcount;
//有效元素數
protected int capacityincrement;
構造方法中主要內容
this.elementdata = new object[10];
this.capacityincrement = 0;
public synchronized boolean add(e e)
這裡和arraylist相比就是增加了同步的synchronized。然後這個類的大部分都有同步操作 ,竟然還包括size這樣的方法,讓我很不理解,這些類似於唯讀得操作也需要限制嗎?
public synchronized int size()
public synchronized void copyinto(object anarray)
return (e)elementdata[0];
return (e)elementdata[elementcount - 1];
沒什麼特別的地方,和arraylist邏輯非常類似。結束
裡面沒什麼內容,只是封裝了幾個簡單方法,例如:
public synchronized int search(object o)
return -1;
}
public boolean empty()
完。 Vector原始碼分析
與arraylist一樣,vector的底層也是使用陣列elementdata進行儲存資料 protected object elementdata 當前elementdata陣列中元素的個數 protected int elementcount 當前elementdata陣列進行擴容的增量 pro...
Vector原始碼分析
說實話vector在工作中用的比較少,至少我沒有用到過。vector在面試中經常用來和arraylist進行比較,但凡知道 vector的都應該知道vector是執行緒安全的,而arraylist是執行緒不安全的,究其原因其實就是因為vector在增 改 刪操方法加了synchronized,利用鎖...
vector原始碼分析
vector和arraylist操作基本相同,只不過對方法加了synchronized做同步處理,以add方法為例 擴容重點步驟 確定擴容的大小 private intnewcapacity int mincapacity return newcapacity max array size 0 ne...