list常用的arraylist和linkedlist。區別和使用場景?
arraylist底層使用時陣列。linkedlist使用的是鍊錶。
陣列查詢具有所有查詢特定元素比較快。而插入和刪除和修改比較慢(陣列在記憶體中是一塊連續的記憶體,如果插入或刪除是需要移動記憶體)。
鍊錶不要求記憶體是連續的,在當前元素中存放下乙個或上乙個元素的位址。查詢時需要從頭部開始,乙個乙個的找。所以查詢效率低。插入時不需要移動記憶體,只需改變引用指向即可。所以插入或者刪除的效率高。
arraylist使用在查詢比較多,但是插入和刪除比較少的情況,而linkedlist使用在查詢比較少而插入和刪除比較多的情況。
Array List和ArrayList的區別與
定義 public abstract class array icloneable,ilist,icollection,ienumerable,istructuralcomparable,istructuraequatable 陣列在記憶體中是連續儲存的,所以它的索引速度是非常的快,而且賦值與修改元...
LinkedList和ArrayList的區別
對於集合collection下的list介面,有兩個實現類,arraylist和linkedlist,那麼他們兩個有什麼區別呢。arraylist的底層由陣列實現,而linkedlist的底層由雙向鍊錶實現,底層的不同才是他們區別的根源。然而因為他們繼承於同乙個父介面,他們的很多方法都是相同的。關於...
ArrayList和LinkedList的面試題
一 arraylist為什麼是執行緒不安全的?arraylist在新增乙個元素的時候,它可能會有兩步來完成 1.在 items size 的位置存放此元素 2.增大 size 的值。在單執行緒執行的情況下,如果 size 0,新增乙個元素後,此元素在位置 0,而且 size 1 而如果是在多執行緒情...