ホームページ >Java >&#&チュートリアル >サイズ制限のあるキューを Java で実装するにはどうすればよいですか?

サイズ制限のあるキューを Java で実装するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-01 18:03:11242ブラウズ

How to Implement a Size-Limited Queue in Java?

Java でサイズ制限のあるキューを実装する方法

Java では、最大サイズが固定されたキューの標準実装では、存在する。ただし、手動での実装は簡単です。

import java.util.LinkedList;

public class LimitedQueue<E> extends LinkedList<E> {
    private int limit;

    public LimitedQueue(int limit) {
        this.limit = limit;
    }

    @Override
    public boolean add(E o) {
        super.add(o);
        while (size() > limit) {
            super.remove();
        }
        return true;
    }
}

Apache Commons Collections ソリューション

代わりに、Apache Commons Collections 4 は、次の要件を満たす CircularFifoQueue クラスを提供します。

    import java.util.Queue;
    import org.apache.commons.collections4.queue.CircularFifoQueue;

    Queue<Integer> fifo = new CircularFifoQueue<>(2);
    fifo.add(1);
    fifo.add(2);
    fifo.add(3);
    System.out.println(fifo); // [2, 3]

Apache Commons コレクションの場合3.x では、CircularFifoBuffer を使用します。

以上がサイズ制限のあるキューを Java で実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。