修改迭代器以按接收元素的顺序显示元素

Modifying Iterator to Display the Elements in the Order they were Received

我在按输入顺序打印元素时遇到困难。我的程序正在读取 .txt 文件。

我正在使用队列来存储我认为是 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;
}

使用队列的poll()方法应该return头元素先进先出

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());
}
}

这个 returns 12 8 9 10 在不同的行上,按照它们被添加的顺序。