我无法按照输入的顺序打印元素。我的程序正在读取.txt文件。
我正在使用Queue存储我认为是FIFO的元素。但是当我运行我的程序时,我得到了相反顺序的元素。我以为我会尝试使用优先级队列,但我会按字母顺序排序。
如果有人有任何想法或指示我应该去寻找答案,我真的很感激。感谢。
public Iterable<Key> keys()
{
Queue<Key> queue = new Queue<Key>();
for (Node x = first; x != null; x = x.next)
queue.enqueue(x.key);
return queue;
}
答案 0 :(得分:0)
使用队列的poll()方法应该以先进先出的方式返回head元素。
import java.util.*;
public class ReturnQueue
{
public static void main(String[] args)
{
Queue<Integer> myQueue = new LinkedList<Integer>();
myQueue.add(12);
myQueue.add(8);
myQueue.add(9);
myQueue.add(10);
for (int i = 0; i < 4; i++)
System.out.println(myQueue.poll());
}
}
这将按照添加的顺序在不同的行上返回12 8 9 10.