集合框架——LinkedList集合源碼分析

目錄

  • 示例代碼
  • 底層代碼
    • 第1步(初始化集合)
    • 第2步(往集合中添加一個元素)
    • 第3步(往集合中添加第二個元素)
    • 第4步(往集合中添加第三個元素)
    • 【集合框架——LinkedList集合源碼分析】LinkedList添加元素流程示意圖
    • 第5步(刪除集合中第一個元素)
    • 第6步(根據索引來刪除集合中的元素)
    • 第7步(根據對象內容來刪除集合中的元素)
    • 第8步(根據索引位置往集合中添加元素)
總結:
  1. LinkedList繼承自List,具備有序性
  2. LinkedList繼承自Deque,具備鏈表關聯性
  3. LinkedList集合進行增刪改查操作底層實際是操作Node節點的前后鏈接關系
  4. LinkedList進行增刪操作時,僅需要操作節點的前后鏈接關系,因此效率較ArrayList高
  5. LinkedList進行查找操作時,必須從頭或者從尾進行查找,因此較底層依靠數組進行存儲的ArrayList查找效率低
示例代碼public class LinkedList01 {    public static void main(String[] args) {        LinkedList linkedList = new LinkedList(); //執行第1步        linkedList.add(1); //執行第2步        linkedList.add(2); //執行第3步        linkedList.add(3); //執行第4步        linkedList.add(1 , new Intger(8)); //執行第8步        linkedList.add(5);        linkedList.remove(); //執行第5步        linkedList.remove(2); //執行第6步        linkedList.remove(new Integer(3)); //執行第7步        System.out.println(linkedList);    }}

    推薦閱讀