BoundedFifoBuffer和CircularFifoBuffer之间的区别?

Ski*_*kip 3 java collections

apache常见集合中,有什么区别:

  1. CircularFifoBuffer
  2. BoundedFifoBuffer

好吧,第一个删除最旧的条目,另一个删除相同顺序的条目,就像进来一样.但是不是一样吗?

Nik*_*zov 5

CircularFifoBuffer延伸BoundedFifoBuffer.它只覆盖单个方法 - add:

public boolean add(Object element) {
    if (isFull()) {
        remove();
    }
    return super.add(element);
}
Run Code Online (Sandbox Code Playgroud)

因此,唯一的区别是BoundedFifoBuffer当它已满时抛出异常并且您尝试添加新元素,同时CircularFifoBuffer删除最旧的元素.