思路:先将数据存到第一个栈里,再将第一个栈里的元素全部出栈到第二个栈,第二个栈出栈,即可达到先进先出
package ds;import java.util.Queue;
import java.util.Stack;
import java.util.concurrent.LinkedBlockingQueue;public class StackToQueue<E> {Stack<E> stack1 = new Stack<E>();Stack<E> stack2 = new Stack<E>();public static void main(String[] args) {Queue<Integer> queue=new LinkedBlockingQueue<Integer>();queue.poll();}public void offer(E val) {stack1.push(val);}public E poll() {if (stack2.empty()) {while (!stack1.isEmpty()){E temp=stack1.peek();stack2.push(temp);stack1.pop();}}E res = stack2.peek();stack2.pop();return res;}}