LinkedList与Queue
LinkedList
允许null的存在,因此在刷题用linkedList
模拟队列的的时候,可以利用这个漏洞;
但是,原则上队列并不允许null,其他时候不应该放null进来。
LinkedList
允许null的存在的原因:
查看JDK源码(JDK11):
private static class Node<E> {
E item;
Node<E> next;
Node<E> prev;
Node(Node<E> prev, E element, Node<E> next) {
this.item = element;
this.next = next;
this.prev = prev;
}
}
LinkedList
的节点包含item 和 指向前后节点的“指针”,因此null只是让节点的值变成null,next和prev还是有值的。
网友评论