小工具知识网

当前位置: 首页 > 行业知识 > Java中Queue的add及offer方法的区别

行业知识

Java中Queue的add及offer方法的区别

2026-10-25 18:39:43 来源:互联网转载

java Queue中的:

()
  • **add/offer
  • element/peek
  • remove/poll**

    这三类方法均为功能类似的方法,在使用时不免有所疑惑,这里介绍下:

    1. add()和offer()区别:

    add()和offer()都是向队列中添加一个元素,一些队列有大小限制,因此如果想在一个满的队列中加入一个新项:

    ()
    • add:此时调用 add() 方法就会抛出一个 unchecked 异常
    • offer:此时调用 offer() 方法会返回 false,可以在程序中进行有效的判断。

      2. poll()和remove()区别:

      remove() 和 poll() 方法都是从队列中删除第一个元素。如果队列元素为空:

    • Remove:调用remove() 的行为与 Collection 接口的版本相似会抛出异常,
    • Poll: poll() 方法在用空集合调用时只是返回 null,因此新的方法更适合容易出现异常条件的情况。

      3. element() 和 peek() 区别:

      element() 和 peek() 用于在队列的头部查询元素。与 remove() 方法类似:

    • 在队列为空时,element() 抛出一个异常
    • 而 peek() 在队列为空时返回 null

      下面是Java中Queue的一些常用方法:

    • add() 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常
    • remove() 移除并返回队列头部的元素 如果队列为空,则抛出NoSuchElementException异常
    • element() 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
    • offer() 添加一个元素并返回true 如果队列已满,则返回false
    • poll() 移除并返问队列头部的元素 如果队列为空,则返回null
    • peek() 返回队列头部的元素 如果队列为空,则返回null
    • put() 添加一个元素 如果队列满,则阻塞
    • take() 移除并返回队列头部的元素

上一篇:7月份毕业实习完回到成都,免强做了个一年人事,但回来后发现成都的人事工资都不高,交完房租过连自己都养不活的样子,考虑基本生活以后就发现找工作好迷茫,什么都愿意去学,可总是感觉没什么企业愿意给我们这样的职场小白机会。怎么办,有工作介绍吗?好无奈

下一篇:服务器系统固态怎么安装?