import java.util.Stack; public class Solution { Stack<Integer> stack1 = new Stack<>(); // 入队辅助栈 Stack<Integer> stack2 = new Stack<>(); // 出队辅助栈 // 模拟入队 public void push(int node) { // 元素入队时直接压入栈1 stack1.push(node); } // 模拟出队 public int pop() { // 元素出队时直接弹出栈2顶部元素 if (!stack2.isEmpty()) { // 栈2不为空时直接弹栈 return stack2.pop(); } else { // 栈2为空时则压入栈1全部元素 while (!stack1.isEmpty()) { stack2.push(stack1.pop()); } // 栈2弹栈 return stack2.pop(); } } }