ArrayList 和 Vector 的區別 -JAVA
ArrayList 和 Vector 內部都是使用 陣列 實現的.
不同點:
1. Synchronization 同步性
arraylist 是不同步的, 意味著多執行緒能同時對其同時工作.所以它是執行緒不安全的.
Vector 是同步的, 意味著只有一個執行緒能對其工作. 執行緒安全
2. Resize
因為 arraylist 和 vector 都是由array實現的, 當我們例項化一個arraylist或者vector 的時候,會在記憶體裡面分配一個大小為10的陣列, 當我們動態的新增一個元素到 arraylist或者vector的時候, arraylist會新建一個大小為原來1.5倍的新陣列然後將 舊的 複製到 新的裡面, 但是vector 會新建一個大小為 原來2 倍的新陣列, 然後將舊的複製.
3. Performace
arraylist 的操作要比vector 快, 因為它是 執行緒不安全的.
相關文章
- Java中Vector和ArrayList的區別Java
- java arrayList vector 區別Java
- Vector和ArrayList的區別
- LinkedList和ArrayList的區別、Vector和ArrayList的區別
- java複習之 Vector、ArrayList和LinkedList 的區別Java
- Java中Vector與ArrayList的區別詳解Java
- Arraylist與Vector的區別 - Java那些事兒專欄Java
- ARRAYLIST VECTOR LINKEDLIST 區別與用法
- ArrayList,LinkedList,Vector,Stack之間的區別
- 【java】【集合】List的三個子類—ArrayList、Vector、LinkedList的區別和聯絡Java
- ArrayList和LinkedList區別 javaJava
- Java集合系列(二):ArrayList、LinkedList、Vector的使用方法及區別Java
- java集合【12】——— ArrayList,LinkedList,Vector的相同點與區別是什麼?Java
- Java中ArrayList和LinkedList區別Java
- ArrayList、Vector、LinkedList的區別及其優缺點? (轉載)
- ArrayList和LinkedList的區別?
- ArrayList和LinkedList的區別
- java中的List介面(ArrayList、Vector、LinkedList)Java
- Java 容器和泛型(2)ArrayList 、LinkedList和Vector比較Java泛型
- Java中Array與ArrayList的主要區別Java
- std::vector 和 std::list 區別
- Java List 常用集合 ArrayList、LinkedList、VectorJava
- Java 集合 ArrayList VS LinkedList VS VectorJava
- C++學習之路(vector::clear和vector::erase的區別)C++
- C++中vector*和vector有什麼區別C++
- Difference Between Arraylist And Vector : Core Java Interview Collection QuestionJavaView
- ArrayList和LinkedList的區別是什麼
- 說出 ArrayList,Vector, LinkedList 的儲存效能和特性?
- C++三種容器:list、vector和deque的區別C++
- ArrayList和LinkedList底層原理的區別和使用場景
- 【Java】equals 和 == 的區別Java
- Java和Javascript的區別JavaScript
- java和html的區別JavaHTML
- ArrayList、LinkedList和Vector的原始碼解析,帶你走近List的世界原始碼
- Java中Collection Frame中常用集合簡析(ArrayList,Vector,HashSet,TreeSet...)Java
- java 中equals和==的區別Java
- java yield()和sleep()的區別Java
- Java中equals和==的區別Java