1、上一節介紹了LinkedList的幾個基本的方法,其他方法類似,就不一一介紹;
現在再來看一個刪除的方法:remove(Object o)
remove方法接受一個Object參數,這里需要對參數做空與非空處理;
但是刪除一個Object元素,都需要遍歷整個鏈表,這樣如果需要頻繁的調用remove方法,刪除的效率是非常低的;
類似的方法還有indexOf(Object o):這是根據傳入的object參數來獲取下標的方法;
2、根據下標來查找節點元素:node(int index)
這個查詢有一個特點:把鏈表分成兩段來進行遍歷,如果index<size/2,那么遍歷前半段,否則遍歷后半段;
這樣做雖然提高了效率,但是如果鏈表非常大的話,效率還是會比較慢;
3、LinkedList的迭代器對象
迭代器對象也提供了豐富的操作方法:包括查找前置元素,后繼元素,增加元素和刪除元素方法;
同時也會拋出并發修改異常:ConcurrentModificationException