List是一個接口,ArrayList和LinkedList是兩個實現類,他們實現的方式不同,其實LinkedList纔是真正的鏈表(若是不清楚什麼是鏈表,須要瞭解一下相關數據結構的知識,這不是一兩句話能說清楚的),而ArrayList是用數組實現的,它不是真正的鏈表,在初始化的時候它先對數組設置一個初始容量,當數組空間不夠的時候,它會從新構建一個容量更大的數組,而後把先前的元素拷貝進去。 ArrayList和LinkedList本質上的區別就是數組和列表這兩種數據結構的區別。課參閱相關數據結構的知識。我這裏簡單的爲你概括幾點: ArrayList:缺點:內存使用量要大一些,添加刪除元素效率較低。元素隨機訪問的效率較高。 LinkedList:相反。數組