java原始碼 LinkedList 二

2021-08-20 03:55:44 字數 1811 閱讀 4401

1.先看下內部的增刪改查方法,對外的方法都是建立在內部方法基礎上的

a.插入到頭結點之前

/**

* links e as first element.

*/private void

linkfirst(e e)

b.加入尾節點之後

/**

* links e as last element.

*/void

linklast(e e)

c.插入指定節點之前

/**

* inserts element e before non-null node succ.

*/void

linkbefore(e e, node succ)

d.刪除頭節點

/**

* unlinks non-null first node f.

*/private

e unlinkfirst(node f)

e.刪除尾節點

/**

* unlinks non-null last node l.

*/private

e unlinklast(node l)

f.刪除指定節點

/**

* unlinks non-null node x.

*/e

unlink(node x) else

if (next == null) else

x.item = null;

size--;

modcount++;

return element;

}

g.根據索引查到指定節點

node node(int index)  else 

}

2.對外開放的增刪改查方法

a.add相關方法

public void 

addfirst(e e)

public void 

addlast(e e)

public boolean 

add(e e)

public void 

add(int index,

e element)

b.remove相關方法

public 

e removefirst()

public 

e removelast()

public boolean 

remove(object o)

}} else }}

return false;

}

public 

e remove(int index)

c.set相關方法

public 

e set(int index,

e element)

d.get的相關方法

public 

e getfirst()

public 

e getlast()

public boolean 

contains(object o)

public int 

indexof(object o)

} else

}return -1

;}

public int 

lastindexof(object o)

} else

}return -1

;}

JDK原始碼走讀(4) 容器之LinkedList

本章分析list系列中的linkedlist,真正意義上的鍊錶,底層採用鍊錶形式儲存資料元素。linkedlist是乙個雙向鍊錶,可以向前或向後兩個方向遍歷鍊錶。linkedlist也可以存放null元素。一 類實現 繼承體系結構 為了對整個list實現 繼承體系有個全貌,先將體系結構圖畫出來 二 ...

java原始碼分析

在往佇列中插入資料由下面幾個函式,他們的區別就是對佇列滿的情況處理不同 put 一直等待著 offer 無時間 如果空了直接返回false offer 有時間 等待指定的時間,在指定時間內如果空了,那麼插入,負責返回false add 丟擲乙個illegalstateexception異常 首先來看...

java關聯原始碼

建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下mar...