Java之Queue接口中add()/offer()、remove()/poll()、element()/peek()的区别

Java之Queue接口中add()/offer()、remove()/poll()、element()/peek()的区别

大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说Java之Queue接口中add()/offer()、remove()/poll()、element()/peek()的区别,希望能够帮助大家进步!!!

  • add() 和 offer()
  • add() : 添加元素,如果添加成功则返回true,如果队列是满的,则抛出异常
  • offer() : 添加元素,如果添加成功则返回true,如果队列是满的,则返回false
    区别:对于一些有容量限制的队列,当队列满的时候,用add()方法添加元素,则会抛出异常,用offer()添加元素,则返回false
    • remove() 和 poll()
      • remove() : 移除队列头的元素并且返回,如果队列为空则抛出异常
      • poll() : 移除队列头的元素并且返回,如果队列为空则返回null
        区别:在移除队列头元素时,当队列为空的时候,用remove()方法会抛出异常,用poll()方法则会返回null
    • element() 和 peek()
      • element() :返回队列头元素但不移除,如果队列为空,则抛出异常
      • peek() :返回队列头元素但不移除,如果队列为空,则返回null
        区别 :在取出队列头元素时,如果队列为空,用element()方法则会抛出异常,用peek()方法则会返回null

 

本文来源huayang183,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/17918

发表评论