我在寻找简单的字节FiFo缓冲区。我必须放置并获取或单个字节或数组。但是我可以每次都放一个字节并获取数组,反之亦然。
任何想法或示例代码对我有帮助吗?

最佳答案

您可以将LinkedList用作队列:

    Queue<String> qe=new LinkedList<String>();

    qe.add("b");
    qe.add("a");
    qe.add("c");
    qe.add("e");
    qe.add("d");

    Iterator it=qe.iterator();

    System.out.println("Initial Size of Queue :"+qe.size());

    while(it.hasNext())
    {
        String iteratorValue=(String)it.next();
        System.out.println("Queue Next Value :"+iteratorValue);
    }

    // get value and does not remove element from queue
    System.out.println("Queue peek :"+qe.peek());

    // get first value and remove that object from queue
    System.out.println("Queue poll :"+qe.poll());

    System.out.println("Final Size of Queue :"+qe.size());


如果您还想添加优先级,则可以使用PriorityQueue

如果您需要它是线程安全的,请使用ConcurrentLinkedQueue

另外,正如@Leonidos所说,可以使用ByteBuffer来表示需要低级I / O,但要小心。

如果您需要任何有关如何使用它们的说明,请随时对帖子发表评论。

08-06 09:31