一个栈(Stack)是Vector类的子类,它代表了一个后进先出(LIFO)的对象堆栈。最后一个添加到堆栈顶部的元素(In)可以是从堆栈中首先移除的元素(Out)。
队列(Queue)类扩展了Collection接口,并支持使用先进先出(FIFO)的插入和删除操作。我们也可以在下面的程序中使用队列来实现栈。
import java.util.*; public class StackFromQueueTest { Queue queue = new LinkedList(); <strong> public void push(int value) { </strong> int queueSize = queue.size(); queue.add(value); for (int i = 0; i < queueSize; i++) { queue.add(queue.remove()); } } <strong> public void pop() { </strong> System.out.println("An element removed from a stack is: " + queue.remove()); } public static void main(String[] args) { StackFromQueueTest test = new StackFromQueueTest(); test.push(10); test.push(20); test.push(30); test.push(40); System.out.println(test.queue); test.pop(); System.out.println(test.queue); } }
<strong>[40, 30, 20, 10] </strong>An element removed from a stack is: 40 <strong>[30, 20, 10]</strong>
以上是我们如何在Java中使用队列实现栈?的详细内容。更多信息请关注PHP中文网其他相关文章!