Java 使用节点类将最后一个元素移动到第一个元素

Java 使用节点类将最后一个元素移动到第一个元素,java,move,Java,Move,我用queue创建了linkedlist,但有一个方法需要帮助 public class QueueLinkedList{ private Node first; private Node last; public QueueLinkedList(){ first = null; last = null; } class Node{ public Object data; public Node next; } ... public void lastToFir

我用queue创建了linkedlist,但有一个方法需要帮助

public class QueueLinkedList{
private Node first;
private Node last;
public QueueLinkedList(){
   first = null;
   last = null;
}

class Node{
   public Object data;
   public Node next;
}
    ...
public void lastToFirst(){
   Node newNode = new Node();
   newNode.data = last.data;
   newNode.next = first;
   first = newNode;
}
当我用

q.add("1");
q.add("2");
q.add("3");
q.add("4");
q.lastToFirst();
while(!q.isEmpty()){
   System.out.print(q.remove());
}
我的期望值是4123

但它给了我41234


如何删除最后一个值4?

问题是您没有更新对最后一个值的引用

你所需要做的就是
last.next=first