在Java中:
..。例外包括优先级队列(根据所提供的比较器对元素进行排序),或者元素的自然排序,以及LIFO队列(或堆栈),后者对元素LIFO (先入先出)排序。
java.util.queue的实现如何使用LIFO而不是FIFO
发布于 2011-07-26 16:22:55
这里提供的堆栈和LinkedList只是一个集合。队列不是集合。它是并发包的一部分,可以与线程池一起使用。
我刚刚再次验证并阅读了您引用的javadoc。我认为使用LIFO队列的唯一选项是使用带有自定义比较器的优先级队列,该比较器根据插入时间按反向顺序比较元素。
发布于 2013-07-30 10:46:57
您可以使用Collections.asLifoQueue方法将任何Deque用作LIFO队列:
Queue<Integer> arrayLifoQueue = Collections.asLifoQueue(new ArrayDeque<Integer>());
Queue<Integer> linkedListLifoQueue = Collections.asLifoQueue(new LinkedList<Integer>());发布于 2011-07-26 16:13:07
您可以使用一个java.util.LinkedList,并使用pop()和push()方法,并像堆栈一样使用它,这是一个LIFO队列。
https://stackoverflow.com/questions/6833140
复制相似问题