我正在尝试在Java中创建一个FIFO (first in first out)数据结构,该数据结构的容量有限,并且在没有足够空间用于新元素时删除最旧的元素。例如:
FIFO<Integer> fifo = new FIFO<Integer>(100); // 100 elements maximum
for (int i = 0; i < 500; i++) {
fifo.write(i);
}
assert fifo.read() == 400; // elements 0..399 are lost
我是否重新发明了一个轮子?你能推荐一些同样的库(或者也许它是JDK的一部分)吗?线程安全并不重要。