[英]Writing my own peek() method for my own LinkedList class in Java
因此,有人要求我为Java中的链表编写一个peek()
方法。 唯一的事情是我要“窥视”的对象是存在于我的LinkedList类的私有类中的base类型的私有变量。 我想使用我的peek()
方法返回对象并打印出来。 我知道这与访问私有变量有关,但是我不能完全使它与我拥有的东西一起工作。 这是我的代码片段:
class LinkedStack <Base>
{
private class Run
{
private Base object;
private Run next;
private Run (Base object, Run next)
{
this.object = object;
this.next = next;
}
}
...
public Base peek()
{
if(isEmpty())
{
throw new IllegalStateException("List is empty");
}
return object; //this throws an error
}
...
public void push(Base object)
{
top = new Run(object, top);
}
}
class Driver
{
public static void main(String []args)
{
LinkedStack<String> s = new LinkedStack<String>();
s.push("A");
System.out.println(s.peek());
}
}
在此先感谢您的帮助! 我真的很感激。
您应该只返回top
变量。 我看不到它已初始化,但我认为它是一个类变量,因为您没有在push方法中对其进行初始化。 然后,您可以执行以下操作:
public Base peek()
{
if(isEmpty())
{
throw new IllegalStateException("List is empty");
}
return top.object; //this throws an error
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.