Java LinkedBlockingDeque poll() 方法

2025 年 3 月 21 日 | 阅读 2 分钟

LinkedBlockingDeque 类的 poll() 方法检索此双端队列对应的队列的头部,并将其移除。如果此双端队列为空,则此方法返回 null。

LinkedBlockingDeque 类的 poll(long timeout, TimeUnit unit) 方法检索此双端队列对应的队列的头部,并等待指定的时长,直到有元素可用。

语法

参数

  1. 不适用
  2. timeout - 在放弃之前等待的时间(以 unit 为单位)
  3. unit - 决定 timeout 参数表示方式的 TimeUnit

指定者:

LinkedBlockingDeque 类的 poll() 方法由以下接口指定:

  1. Queue<E> 接口中的 poll() 方法。
  2. Deque<E> 接口中的 poll() 方法。
  3. BlockingDeque<E> 接口中的 poll() 方法。

返回值

poll() 方法返回此双端队列的头部,如果此双端队列为空,则返回 null。

poll(long timeout,TimeUnit unit) 方法返回此双端队列的头部,如果在指定等待时间内元素仍不可用,则返回 null。

抛出

如果在等待期间方法被中断,poll() 方法会抛出 InterruptedException。

示例 1

输出

Deque before using poll() method : [Rahul, Sagar, Tarun, Vaibhav]

Head of Deque is: Rahul

Deque after using poll() method : [Sagar, Tarun, Vaibhav]

示例 2

输出

Deque before using poll() method : [15023001, 15023002, 15023003, 15023005, 15023007, 15023011]

Head of Deque is: 15023001

Deque after using poll() method : [15023002, 15023003, 15023005, 15023007, 15023011]

示例 3

输出

First element of Deque is: Dwayne
Deque after using poll() method : [Adam, Mark, Robret, Winston, Peter]