Java LinkedBlockingDeque offerFirst() 方法

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

LinkedBlockingDeque 类的 offerFirst() 方法将定义的元素添加到此双端队列的前面。

语法

参数

e - 要添加的元素。

timeout - 在放弃之前方法必须等待的时间,以 unit 为单位。

unit - 决定如何解释 timeout 参数的 TimeUnit。

指定者:

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

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

返回值

offerFirst() 方法返回 true(如果已将定义的元素添加到此双端队列),否则返回 false。

抛出

offerFirst() 方法抛出:

  1. NullPointerException - 如果定义的元素为 null。
  2. InterruptedException - 如果在等待期间中断了方法调用。

示例 1

输出

[1, 2, 3, 4, 5]
After inserting 10 at first position
[10, 1, 2, 3, 4, 5]

示例 2

输出

1. Rohit
2. Ramesh
3. Janak
4. Vishal
5. Yatin
After adding string :
1. Yogesh
2. Rohit
3. Ramesh
4. Janak
5. Vishal
6. Yatin

示例 3

输出

Exception in thread "main" java.lang.IllegalStateException: Deque full
	at java.util.concurrent.LinkedBlockingDeque.addFirst(Unknown Source)
	at mypack1.LinkedBlockingDequeOfferFirstExample3.main(LinkedBlockingDequeOfferFirstExample3.java:13)