Ben*_*zle 1 java methods stack
我正在尝试编写一个Java方法来从堆栈中预先形成"多重弹出".
它应该对stack对象执行"弹出"操作k次数.这就是我的想法,但它并不完全正确.有帮助吗?
public void multipop(int k) {
while (top != null) {
for (int i = 0; i <= k; i++) {
this.pop();
}
}
}
Run Code Online (Sandbox Code Playgroud)
while循环直到堆栈耗尽,这可能不是你想要的.如果要检查堆栈中是否有元素,请使用if语句.this.pop()四次.while用if,你只检查是否有一个元素是在栈中,但你可以调用pop()多次.您应该在循环内部进行检查或将检查内部移动pop().