Java Deque element()方法
Deque接口 的 element() 方法返回容器中最前面的元素。它不会删除容器中的元素。这个方法返回Deque的头部。当Deque为空时,该方法会抛出一个异常。
语法:
E element()
参数: 该方法不接受任何参数。
返回: 该方法返回容器前端或Deque头部的元素。
异常: 当Deque为空时,该函数会抛出NoSuchElementException。
以下程序说明了Deque的element()方法:
程序1: 借助 LinkedList
// Java Program Demonstrate element()// method of Dequeimport java.util.*; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Deque Deque<Integer> DQ = new LinkedList<Integer>(); // Add numbers to end of Deque DQ.add(7855642); DQ.add(35658786); DQ.add(5278367); DQ.add(74381793); // print Deque System.out.println("Deque: " + DQ); // print head System.out.println("Deque's head: " + DQ.element()); }}
输出
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
程序2: 在 ArrayDeque 的帮助下 。
// Java Program Demonstrate element()// method of Dequeimport java.util.*; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Deque Deque<Integer> DQ = new ArrayDeque<Integer>(); // Add numbers to end of Deque DQ.add(7855642); DQ.add(35658786); DQ.add(5278367); DQ.add(74381793); // print Deque System.out.println("Deque: " + DQ); // print head System.out.println("Deque's head: " + DQ.element()); }}输出
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
程序3: 在 ConcurrentLinkedDeque 的帮助下 。
// Java Program Demonstrate element()// method of Dequeimport java.util.*;import java.util.concurrent.ConcurrentLinkedDeque; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Deque Deque<Integer> DQ = new ConcurrentLinkedDeque<Integer>(); // Add numbers to end of Deque DQ.add(7855642); DQ.add(35658786); DQ.add(5278367); DQ.add(74381793); // print Deque System.out.println("Deque: " + DQ); // print head System.out.println("Deque's head: " + DQ.element()); }}输出
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
程序4: 在 LinkedBlockingDeque 的帮助下 。
// Java Program Demonstrate element()// method of Dequeimport java.util.*;import java.util.concurrent.LinkedBlockingDeque; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Deque Deque<Integer> DQ = new LinkedBlockingDeque<Integer>(); // Add numbers to end of Deque DQ.add(7855642); DQ.add(35658786); DQ.add(5278367); DQ.add(74381793); // print Deque System.out.println("Deque: " + DQ); // print head System.out.println("Deque's head: " + DQ.element()); }}输出
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
程序2
// Java Program Demonstrate element()// method of Dequeimport java.util.*; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Deque Deque<Integer> DQ = new LinkedList<Integer>(); // Add numbers to end of Deque DQ.add(7855642); DQ.add(35658786); DQ.add(5278367); DQ.add(74381793); // print Deque System.out.println("Deque: " + DQ); // print head System.out.println("Deque's head: " + DQ.element()); DQ.clear(); // Deque is empty now hence exception System.out.println("Deque's head: " + DQ.element()); }}输出
Exception in thread "main" java.util.NoSuchElementException at java.util.LinkedList.getFirst(LinkedList.java:244) at java.util.LinkedList.element(LinkedList.java:663) at GFG.main(GFG.java:29)
参考资料: https://docs.oracle.com/javase/8/docs/api/java/util/Deque.html#element-
