这个 getFirst() 方法 Deque接口 返回第一个元素或Deque的头。它不会删除元素。当Deque为空时,它抛出一个异常。 语法:
null
E getFirst()
参数: 此方法不接受任何参数。 返回: 此方法返回第一个元素或Deque的头,但不删除它。 例外情况: 函数抛出 非接触性异常 当Deque为空且函数被调用时。 下面的程序演示了Deque的getFirst()方法: 项目1: 借助于 链表 .
JAVA
// Java Program Demonstrate getFirst() // method of Deque import 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.getFirst()); } } |
输出:
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
项目2: 借助于 ArrayDeque .
JAVA
// Java Program Demonstrate getFirst() // method of Deque import 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.getFirst()); } } |
输出:
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
方案3: 借助于 LinkedBlockingDeque .
JAVA
// Java Program Demonstrate getFirst() // method of Deque import 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.getFirst()); } } |
输出:
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
方案4: 借助于 ConcurrentLinkedEque .
JAVA
// Java Program Demonstrate getFirst() // method of Deque import 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.getFirst()); } } |
输出:
Deque: [7855642, 35658786, 5278367, 74381793]Deque's head: 7855642
项目2:
JAVA
// Java Program Demonstrate getFirst() // method of Deque when it is empty import 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.getFirst()); DQ.clear(); // Deque is empty now hence exception System.out.println("Deque's head: " + DQ.getFirst()); } } |
输出:
Exception in thread "main" java.util.NoSuchElementException at java.util.LinkedList.getFirst(LinkedList.java:244) at GFG.main(GFG.java:29)
参考: https://docs.oracle.com/javase/8/docs/api/java/util/Deque.html#getFirst–
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END