1. 程式人生 > 其它 >List介面及部分實現類

List介面及部分實現類

技術標籤:# java

本部落格由該視訊整理所得:視訊連結

List集合儲存元素特點

有序可重複
有序:List集合中的元素有下標。從e開始,1遞增。
可重複:儲存一個1,還可以再儲存1.

List介面特有的常用的方法:

void add(int index,Object element)
Object get(int index)
int indexOf(object o)
int lastIndexOf(Object o)
Object remove(int index)
Object set(int index,object element)

ArrayList

  1. 預設容量為10
  2. 集合底層是Object[]陣列。
  3. 每次擴容增長為原來的1.5倍。
  4. 使用ArrayList時,建議初始給定一個合適的大小,減少擴容帶來的效率影響。
  5. 優點:檢索效率高;向末尾增加元素效率高。
  6. 缺點:隨機增刪元素效率低
  7. 一道面試題:平時有用哪個集合型別最多?
    答:Arraylist。調動add方法會向末尾增加一個元素,效率不會受到影響,而且平時檢索用的最多。

LinkedList

  1. 連結串列優點:隨機增刪元素效率較高。(因為增刪元素不涉及到大量元素位移)
  2. 連結串列缺點:查詢效率較低,每一次查詢某個元素的時候都需要從頭節點開始往下遍歷。
  3. LinkedList集合沒有初始化容量。最初這個鏈喪中沒有任何元素。first和last引用都是nulL。

Vector

  1. 底層是一個數組
  2. 初始化容量為10
  3. 每次擴容為原來的2倍
  4. 所有方法帶有synchronized修飾,執行緒安全。
  5. 使用集合工具類:java.util.collections的synchronizedList方法可以將一個執行緒不安全的ArrayList集合轉換成執行緒安全的。
  6. java.util.collection是集合介面。java.util.collections是集合工具類。l