使用LinkedList<E>泛型類可以創建鏈表結構的數據對象。鏈表是由若干個節點組成的一種數據結構,每個節點含有一個數據和下一個節點的引用(單鏈表),或含有一個數據以及上一個節點的引用和下個節點的引用(雙鏈表),節點的索引從0開始。鏈表適合動態改變其存儲數據,如增加、刪除節點等。
1、LinkedList<E>對象
java.util包中的LinkedList<E>泛型類創建的對象以鏈表結構存儲數據,習慣上稱LinkedList類創建的對象爲鏈表對象。例如:
mylist.add("How");
mylist.add("Are");
mylist.add("You");
mylist.add("Java");
這時,雙鏈表mylist就有了有4個節點,節點是自動連接在一起的,不需要我們去做連接。也就是說,不需要我們去操作安排節點中所存放的下一個或上一個節點的引用。
2、常用方法
一下是LinkedList<E>泛型類的一些常用方法。
① public boolean add(E element)——向鏈表末尾添加一個新的節點,該節點中的數據是參數element指定的對象。
② public void add(int index, E element)——向鏈表的指定位置添加一個新的節點,該節點中的數據是參數element指定的對象。
③ public void addFirst(E element)——向鏈表的頭添加新節點,該節點中的數據是參數element指定的對象。
④ public void addLast(E element)——向鏈表的末尾添加新節點,該節點中的數據是參數element指定的對象。
⑤ public void clear()——刪除鏈表的所有節點,使當前鏈表成爲空鏈表。
⑥ public E remove(int index)——刪除指定位置上的節點。
⑦ public boolean remove(E element)——刪除首次出現含有數據element的節點。
⑧ public E removeFirst()——刪除第一個節點,並返回這個節點中的對象。
⑨ public E removeLast()——刪除最後一個節點對象,並返回這個節點的對象。
⑩ public E get(int index)——得到鏈表中指定位置處節點中的對象。
⑾ public E getFirst()——得到鏈表中第一個節點中的對象。
⑿ public E getLast()——得到鏈表中最後一個節點中的對象。
⒀ public int indexOf(E element)——返回含有數據element的節點在鏈表中首次出現的位置,如果鏈表中無此節點,則返回-1。
⒁ public int lastIndexOf(E element)——返回含有數據element的節點在鏈表中最後出現的位置,如果鏈表中無此節點,則返回-1。
⒂ public E set(int index, E element)——將當前鏈表index位置節點中的對象element替換爲參數element指定的對象,並返回被替換的對象。
⒃ public int size()——返回鏈表的長度,即節點的個數。
⒄ public boolean contains(Object element)——判斷鏈表中節點中是否有節點含有對象element。
⒅ public Object clone()——得到當前鏈表的一個克隆鏈表,改克隆鏈表中節點數據的改變不會影響到當前鏈表中的節點數據,反之亦然。