Java面试题之 Queue 中 poll()和 remove()有什么区别?

队列是一个典型的先进先出(FIFO)的容器。即从容器的一端放入事物,从另一端取出,并且事物放入容器的顺序与取出的顺序是相同的。
队列的两种实现方式:

在这里插入图片描述

1、offer()和add()的区别

add()和offer()都是向队列中添加一个元素。但是如果想在一个满的队列中加入一个新元素,调用 add() 方法就会抛出一个 unchecked 异常,而调用 offer() 方法会返回 false。可以据此在程序中进行有效的判断!

2、peek()和element()的区别

peek()和element()都将在不移除的情况下返回队头,但是peek()方法在队列为空时返回null,调用element()方法会抛出NoSuchElementException异常。

3、poll()和remove()的区别

poll()和remove()都将移除并且返回对头,但是在poll()在队列为空时返回null,而remove()会抛出NoSuchElementException异常。

笔者在此总结,希望对大家有所帮助!

谢谢大家,我们一起成长!

猜你喜欢

转载自blog.csdn.net/qq_41026809/article/details/90647569