Java 将单链接列表转换为双链接列表

Java 将单链接列表转换为双链接列表,java,doubly-linked-list,Java,Doubly Linked List,这是我目前拥有的代码。仅包含addFirst方法 public void addFirst(E e) { Node<E> newNode = new Node<E>(e); if (tail == null) head = tail = newNode; else { newNode.next = head; head = newNode;

这是我目前拥有的代码。仅包含addFirst方法

public void addFirst(E e) {     
    Node<E> newNode = new Node<E>(e); 
    if (tail == null)           
        head = tail = newNode; 
    else {
        newNode.next = head;    
        head = newNode;         
    }
    size++;
}

private static class Node<E> {  
        E element;
        Node<E> next;

        public Node(E e) {
            element = e;
      }
}
public void addFirst(E){
Node newNode=新节点(e);
if(tail==null)
头=尾=新节点;
否则{
newNode.next=头部;
头=新节点;
}
大小++;
}
私有静态类节点{
E元素;
节点下一步;
公共节点(E){
元素=e;
}
}
正在尝试设置“上一个”字段

public void addFirst(E e) {     
    Node<E> newNode = new Node<E>(e); 
    if (tail == null)           
        head = tail = newNode; 
    else {
        newNode.next = head;
        firstElement.previous = newNode; //*
        head = newNode;
        newNode.previous = null;
    }
    size++;
}

private static class Node<E> {  
        E element;
        Node<E> next, previous; //adding previous field

        public Node(E e) {
            element = e;
      }
}
public void addFirst(E){
Node newNode=新节点(e);
if(tail==null)
头=尾=新节点;
否则{
newNode.next=头部;
firstElement.previous=newNode//*
头=新节点;
newNode.previous=null;
}
大小++;
}
私有静态类节点{
E元素;
节点next,previous;//添加previous字段
公共节点(E){
元素=e;
}
}
*我想要firstElement.previous指向新节点。我该怎么做?

更改:

firstElement.previous = newNode


好吧,我试试看,但看起来不对。head.previous是否执行firstElement的previous方法?根据代码,第一个元素是head。
head.previous = newNode;