已解决:
问题原因,含有尾结点的双链表未完成尾结点的指向,在第一个节点插入的时候,需要完成尾结点的指向
代码如下
//如果是第一个节点
if(isEmpty()){
Node before = head;
//创建第一个节点
Node<T> newNode = new Node<>(t, null, null);
head.next = newNode;
newNode.pre = head;
//完成尾结点的指向
newNode.next = last;
last.pre = newNode;
N++;
}else{
Node before = last.pre;
//before newNode last
//创建一个新的节点
Node<T> newNode = new Node<>(t, null, null);
before.next = newNode;
newNode.pre = before;
newNode.next = last;
last.pre = newNode;
N++;
}