尝试在java ready中为堆栈类编写pop方法

时间:2018-06-07 15:15:44

标签: java stack pop

我试图在java中使用pop函数创建自己的堆栈类,该函数删除堆栈中推送的最后一个对象并返回它。当我在测试器类中调用stack.pop()后跟stack.display()而不显示没有弹出对象的堆栈内容时,不会显示任何内容。 return语句也必须在方法的末尾,这意味着只有在我已经将它设置为null之后才能返回top。我做错了什么如果return语句必须在方法结束时如何返回被删除的对象?请帮帮我,我很伤心。

public StackElement pop ()
{
    if (empty () == true)
    {
        System.out.println ("Stack is empty");
        return null;
    }
    else
    {

        StackElement temp = top.next;
        top = null;
        temp = top;
        return top;

    }
}

1 个答案:

答案 0 :(得分:0)

目前您将top设置为null然后返回不正确的值。将temp(您计划返回的Stackelement)设置到堆栈的顶部,然后将stack的当前top设置为下一个元素,然后返回temp(前一个顶部)

else
{
    StackElement temp = top;
    top = top.next;
    return temp;
}