Java中的ConcurrentLinkedDeque addFirst()方法
java.util.concurrent.ConcurrentLinkedDeque.addFirst() 是Java中的内置函数,它在ConcurrentLinkedDeque的前面插入指定的元素。
语法:
conn_linked_deque.addFirst(elem)
参数: 该方法只接受一个参数 elem ,它要添加到ConcurrentLinkedDeque开始的位置。
返回值: 该函数没有返回值。
异常: 当传递给函数的参数为null时,该方法将抛出NullPointerException。由于其有界性质,此方法永远不会抛出IllegalStateException或返回false。
以下程序说明了ConcurrentLinkedDeque.addFirst()方法:
程序1: 该程序涉及整数类型的ConcurrentLinkedDeque。
// Java程序演示ConcurrentLinkedDeque的addFirst()
//方法
import java.util.concurrent.*;
class ConcurrentLinkedDequeDemo {
public static void main(String[] args)
{
ConcurrentLinkedDeque<Integer> cld =
new ConcurrentLinkedDeque<Integer>();
cld.addFirst(12);
cld.addFirst(110);
cld.addFirst(55);
cld.addFirst(76);
//显示现有的LinkedDeque
System.out.println("链表双端队列中的初始元素: " + cld);
//在LinkedDeque中插入新元素
cld.addFirst(21);
//显示修改后的LinkedDeque
System.out.println("链表双端队列中的元素: " + cld);
}
}
链表双端队列中的初始元素: [76, 55, 110, 12]
链表双端队列中的元素: [21, 76, 55, 110, 12]
程序2: 该程序涉及整数类型的ConcurrentLinkedDeque,并在将null作为参数传递给函数时进行异常处理。
// Java程序演示ConcurrentLinkedDeque的addFirst()
//method
import java.util.concurrent.*;
class ConcurrentLinkedDequeDemo {
public static void main(String[] args)
{
ConcurrentLinkedDeque<String> cld =
new ConcurrentLinkedDeque<String>();
cld.addFirst("Geeks");
cld.addFirst("Geek");
cld.addFirst("Gfg");
cld.addFirst("Contribute");
//显示现有的LinkedDeque
System.out.println("链表双端队列中的初始元素: " + cld);
/*当将null
作为参数传递时抛出异常*/
try {
cld.addFirst(null);
}
catch (NullPointerException e) {
System.out.println("NullPointerException抛出");
}
//在LinkedDeque中插入新元素
cld.addFirst("Sudo Placement");
//显示修改后的LinkedDeque
System.out.println("链表双端队列中的元素: " + cld);
}
}
链表双端队列中的初始元素: [Contribute, Gfg, Geek, Geeks]
NullPointerException抛出
链表双端队列中的元素: [Sudo Placement, Contribute, Gfg, Geek, Geeks]
参考文献: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ConcurrentLinkedDeque.html#addFirst()
极客教程