LinkedList中的nullList poll()与空列表的LinkedList poll()相对应

时间:2014-06-27 01:42:31

标签: java queue

我正在查看poll()unlinkFirst()LinkedList的代码,如果有null,我似乎无法找到如何防止返回null } LinkedList中的项目。

poll()在接口Queue中定义,仅当Queue为空时才返回null。 LinkedList违反了队列中不包含null元素的建议,因为这会阻止poll()正常工作 - 但如果poll()我无法看到poll()的任何备用返回值node包含null元素。

我原以为像这样广泛使用的类会删除{{1}}方法,或以某种方式解释此错误点。

我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

  

poll()在接口Queue中定义,仅当队列为空时才返回null

不,不是。 "检索并删除此队列的头部,如果此队列为空,则返回null。"。没有"只有"那里。

  

LinkedList违反了Queues不包含空元素的建议

没有此类建议,也没有违规行为。有一个声明"即使在允许它的实现中,也不应该将null插入到队列中,而是将其写入用户程序员,而不是实现。