大小受限的队列,用于保存 Java 中的最后 N 个元素
2022-08-31 05:57:37
关于Java库的一个非常简单和快速的问题:是否有一个现成的类来实现具有固定最大大小的a - 即它始终允许添加元素,但它会静默地删除head元素以容纳新添加的元素的空间。Queue
当然,手动实现它是微不足道的:
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;
}
}
据我所知,Java stdlibs中没有标准的实现,但是在Apache Commons或类似的东西中可能有一个?