- ArrayList的實現是基於數組,LinkedList的實現是基於雙向鏈表。
- 對於隨機訪問,ArrayList優於LinkedList
- 對於插入和刪除操做,LinkedList優於ArrayList
- LinkedList比ArrayList更佔內存,由於LinkedList的節點除了存儲數據,還存儲了兩個引用,一個指向前一個元素,一個指向後一個元素。
補充:ArrayList 使用一個內置數組來存儲元素,起始容量是10,當數組須要擴容時,擴容公式:(old * 3) / 2 + 1,也就是說每次容量會增長 50%。這意味着若是包含大量元素,將會浪費很大的空間。這種浪費是由 ArrayList 自己決定的。數組