用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
package test; import java.util.ArrayList; import java.util.Iterator; import java.util.Stack; public class Stacks { static Stack<Integer> stack1 = new Stack<Integer>(); static Stack<Integer> stack2 = new Stack<Integer>(); public static void push(int node) { stack1.push(node); } public static int pop() { int value = 0; Iterator<Integer> iterator1 =stack1.iterator(); Iterator<Integer> iterator2 =stack2.iterator(); if(stack1.size()!=0&&stack2.size()==0){ while(stack1.size()!=0){ stack2.push(stack1.pop()); } value = stack2.pop(); } else if(stack2.size()!=0){ value = stack2.pop(); } return value; } public static void main(String[] args) { push(1); push(2); push(3); System.err.println(pop()); System.err.println(pop()); push(4); System.err.println(pop()); push(5); System.err.println(pop()); System.err.println(pop()); } }