如何删除并打印 IntStack 对象中的每个项目直到它为空?

How to remove and print every item in an IntStack object until it is empty?

我无法弄清楚如何删除和打印 IntStack 对象中的每个项目,直到它为空。我需要使用 if 语句吗?我知道堆栈的基础知识,例如: 假设 s 指的是一个 IntStack 对象。

如果我想将值 100 添加到 s 的顶部,我只需使用 s.push(100)

如果我想删除并打印 s 的最高值,我会使用 s.pop()

如果我想打印最高值而不删除它,我会使用 s.peek()

一旦我尝试删除并打印 s 中的每个项目直到它为空,我 运行 就遇到了麻烦。

假设当堆栈中没有任何内容时,s.peek() 将 return null,

while(s.peek() != null){
    System.out.println(s.pop());
}

即使 InStack 是某个第三方堆栈,根据所讨论的描述,它实现了所有标准堆栈方法,因此以下应该有效。

public void print(Stack s)
{
   while(!s.isEmpty())
   {
       System.out.println(s.pop());
   }

}