快速问题。如果我像这个一样从LinkedList中删除元素
playerDeck.remove(0);
或者像这个
playerDeck.removeFirst();
列表的第一个元素是空白的吗?或者所有列表都向上滑动,第一个元素将是第二个元素?示例:链表:
4
5
6
8
删除4后,列出它将是
null
5
6
8
或者?
5
6
8
不会有"空格",也不会有null
。这是Java集合API中所有列表(List<E>
)的通用约定。
这是它的代码。您必须将源代码附加到IDE中。
private E remove(Entry<E> e) {
if (e == header)
throw new NoSuchElementException();
E result = e.element;
e.previous.next = e.next;
e.next.previous = e.previous;
e.next = e.previous = null;
e.element = null;
size--;
modCount++;
return result;
}
我希望你理解它的逻辑