2. 在尾部增加元素, 該方法比較簡單, 雖然看上去有兩個節點,但是voidLink并不是我們需要的,只是為了方便維護指針而存在的。所以此時size == 1
如果繼續在尾部增加節點,效果圖如下,此時size == 2
3. 下面看一個復雜一點的add方法
4.在頭部增加元素addFirstImpl和addLastImpl類似 5.clear方法,回復成voidLink最初的樣子
@Overridepublic void clear() { if (size > 0) { size = 0; voidLink.next = voidLink; voidLink.previous = voidLink; modCount++; }} 6. addAll方法可以在指定位置增加集合,另外,該集合可以是自己 7. contains方法需找元素equals那個,LinkedList中的元素允許為空
8.返回第一個元素, 返回最后一個元素方法類似,省略不說
private E getFirstImpl() { Link<E> first = voidLink.next; if (first != voidLink) { return first.data; } throw new NoSuchElementException();}9.indexOf和lastIndexOf兩個方法從前向后和從后向前遍歷,找到equals那個元素,找不到則返回-1
新聞熱點
疑難解答