Stack中push和pop执行的一些问题

Stack中push和pop只要出现即会执行(也就是判断时使用类似stack.pop()==x?),如下代码:

Stack stack = new Stack();
Character c='{';
if(stack.isEmpty() || stack.pop()!=c){
                return false;
}

  这里虽然pop函数出现在判断中,但是对于栈来说,栈顶元素会弹出后再判断是否等于’{’,所以判断结束后,对于栈来说,同时也执行了一次pop。


  那么如果我们想判断栈顶元素,而不使其弹出,应该怎么做呢?
这里可以使用Stack自带的peek()方法。中文翻译为窥视(还是很好记的!)

你可能感兴趣的:(Java)