ArrayDeque中的addfirst和offerFirst方法之间的差异
已经尝试了一个示例程序来理解Java 6
addFirst和offerFirst方法之间的区别ArrayDeque。但是它们似乎是相同的,有什么建议吗?
public void interfaceDequetest(){
try{
ArrayDeque<String> ad = new ArrayDeque<String>();
ad.addFirst("a1");
ad.offerFirst("o1");
ad.addFirst("a2");
ad.offerFirst("02");
ad.addFirst("a3");
System.out.println("in finally block");
for (String number : ad){
System.out.println("Number = " + number);
}
}
回答:
区别在于,由于队列容量限制,添加失败时会发生什么:
.addFirst()引发(未经检查的)异常,.offerFirst()返回false。
在实现的中记录了Deque这一点ArrayDeque。
值得注意的是,ArrayDeque它没有容量限制,因此基本上.addFirst()不会抛出异常(并且.offerFirst()总是会返回true);例如,这LinkedBlockingQueue与具有初始容量的建筑物不同。
以上是 ArrayDeque中的addfirst和offerFirst方法之间的差异 的全部内容, 来源链接: utcz.com/qa/420877.html
