首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java Vector 類深度解析:特性與常見誤區

     編輯:Java 相關知識

Vector 核心特性

  • 名稱由來:稱為「向量」,但並非 Key-Value 結構,不具備 Map 功能,本質是動態陣列。
  • 預設建構子:初始容量 10,容量增量(capacityIncrement)預設為 0。
  • 容量增量機制:
    • 增量為 0:容量翻倍(2倍)。
    • 增量 > 0:按指定增量增長。
    • 範圍為 [0, Integer.MAX_VALUE],非 [0,1) 比例。
  • 與陣列差異:陣列元素型別固定;Vector 可存放任意型別物件(編譯期視為 Object,運行期多型)。

Vector vs ArrayList vs LinkedList

特性VectorArrayListLinkedList
同步化是 (方法級 synchronized)否否
擴容策略預設 2倍1.5倍無容量概念 (鏈結串列)
隨機存取O(1)O(1)O(n)
中間插入/刪除O(n) 需位移O(n) 需位移O(1) 僅調整指標
適用場景多執行緒、頻繁尾部操作單執行緒、頻繁隨機存取頻繁中間插刪

註:若需執行緒安全的 List,現代 Java 建議用 Collections.synchronizedList(new ArrayList()) 或 CopyOnWriteArrayList,效能優於 Vector。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved