Очень простой и быстрый вопрос о библиотеках Java: есть ли готовый класс, который реализует 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 или что-то в этом роде?