找不到方法getInfo()?

时间:2014-02-05 02:23:11

标签: java

问题出现在以下代码的toString方法中:

import java.util.*;
public class LinkedDeque<T> // implements  Deque<T> 
{
private Node head;  
private Node tail; 

private int size;

private class Node // Node class
{
    T info;
    Node next; 
    Node prev; 

    private Node (T info, Node prev, Node next)
    {
        this.info = info;
        this.prev = prev;
        this.next = next;
    }

    private T getInfo()
    {
        return this.info;
    }

    private Node getNext()
    {
        return this.next;
    }

    private Node getPrev()
    {
        return this.prev;
    }
}

public LinkedDeque ()
{
    this.head = null;
    this.tail = null;
    this.size = 0;
}

public static void main()
{

}

public int size ()
{
    Node count = head;
    while(count.getNext() != null)
    {
        size++;
        count = count.getNext();
    }
    return size;
}

public String toString()
{   
    return this.getInfo();
}

public boolean isEmpty()
{
    return size() == 0;
}

}

我的编译器一直给我一个错误,说明缺少getInfo方法。任何帮助,将不胜感激!最初,我认为这是因为Node类是私有的,但Node getNext()方法在方法size()中工作正常。

1 个答案:

答案 0 :(得分:2)

toString方法是LinkedDeque而非Node的成员。 LinkedDeque没有getInfo方法。

不确定你想要实现的是什么,但你可以考虑将该方法转移到Node类......