区别在于,由于队列容量限制,添加失败时会发生什么:
.addFirst()
引发(未经检查的)异常,.offerFirst()
返回false
。
在实现的中记录了
Deque这一点
ArrayDeque。
值得注意的是,
ArrayDeque它没有容量限制,因此基本上
.addFirst()不会抛出异常(并且
.offerFirst()总是会返回
true);例如,这
linkedBlockingQueue与具有初始容量的建筑物不同。

区别在于,由于队列容量限制,添加失败时会发生什么:
.addFirst()引发(未经检查的)异常,
.offerFirst()返回
false。
在实现的中记录了
Deque这一点
ArrayDeque。
值得注意的是,
ArrayDeque它没有容量限制,因此基本上
.addFirst()不会抛出异常(并且
.offerFirst()总是会返回
true);例如,这
linkedBlockingQueue与具有初始容量的建筑物不同。