ArrayList和LinkedList的基本用法以及區別
阿新 • • 發佈:2018-12-25
Java學習筆記之ArrayList基本用法ArrayList簡介ArrayList是一個其容量能夠動態增長的動態陣列。它繼承了AbstractList,實現了List、RandomAccess, Cloneable, java.io.Serializable。基本的ArrayList,長於隨機訪問元素,但是在List中間插入和移除元素時較慢。同時,ArrayList的操作不是執行緒安全的!一般在單執行緒中才使用ArrayList,而在多執行緒中一般使用Vector或者CopyOnWriteArrayList。ArrayList遍歷方式ArrayList有三種遍歷方式迭代器遍歷Iterator<Integer> it = arrayList.iterator();while(it.hasNext()){ System.out.print(it.next() + " ");}
- LinkedList 是一個繼承於AbstractSequentialList的雙向連結串列。它也可以被當作堆疊、佇列或雙端佇列進行操作。
- LinkedList 實現 List 介面,能進行佇列操作。
- LinkedList 實現 Deque 介面,即能將LinkedList當作雙端佇列使用。
- ArrayList底層是由陣列支援,而LinkedList 是由雙向連結串列實現的,其中的每個物件包含資料的同時還包含指向連結串列中前一個與後一個元素的引用。