在Java中出现实现错误

时间:2016-02-07 22:06:04

标签: java deque

我试图实现Dequeue。

以下是我的代码的一部分。我使用print()函数来打印Dequeue中的所有节点,但似乎节点根本没有连接。

addLast()函数尝试在连接到Dequeue时新建一个节点。

public class Test<Item>{

    private Node first, last;
    private int N;
    private class Node{
        Item value;
        Node next;
    }

    public void addLast(Item item){
        Node oldLast = last;
        Node last = new Node();
        last.value = item;
        last.next = oldLast;
        N++;
    }

    public void print(){
        Node temp = last;
        while(temp != null){
            System.out.println(temp.value);
            temp = temp.next;
        }
    }

    public static void main(String[] args){
        Test<String> deque = new Test<String>();
        deque.addLast("hello");
        deque.addLast("first");
        deque.addLast("second");
        deque.addLast("third");
    }
}

1 个答案:

答案 0 :(得分:0)

addLast()方法中:

而不是Node last = new Node();你应该写:

last = new Node();