Close

Java Collections - ArrayDeque.getFirst() Examples

[Last Updated: Dec 10, 2025]

Java Collections Java Java API 


Class:

java.util.ArrayDeque

java.lang.Objectjava.lang.Objectjava.util.AbstractCollectionjava.util.AbstractCollectionjava.util.CollectionCollectionjava.util.ArrayDequejava.util.ArrayDequejava.util.DequeDequejava.lang.CloneableCloneablejava.io.SerializableSerializableLogicBig

Method:

public E getFirst()

Retrieves, but does not remove, the first element of this deque. This method differs from peekFirst() only in that it throws an exception if this deque is empty.

Examples


package com.logicbig.example.arraydeque;

import java.util.ArrayDeque;
import java.util.List;

public class GetFirstExample {

public static void main(String... args) {
ArrayDeque<Integer> ad = new ArrayDeque<>(List.of(3, 8, 5, 7));
Integer element = ad.getFirst();
System.out.println(element);
element = ad.getFirst();
System.out.println(element);
ad.remove();
element = ad.getFirst();
System.out.println(element);
}
}

Output

3
3
8
JDK 25




package com.logicbig.example.arraydeque;

import java.util.ArrayDeque;

public class GetFirstExample2 {

public static void main(String... args) {
ArrayDeque<Integer> ad = new ArrayDeque<>();
Integer element = ad.getFirst();
System.out.println(element);
}
}

Output

java.util.NoSuchElementException
at java.util.ArrayDeque.getFirst (ArrayDeque.java:400)
at com.logicbig.example.arraydeque.GetFirstExample2.main (GetFirstExample2.java:14)
at jdk.internal.reflect.DirectMethodHandleAccessor.invoke (DirectMethodHandleAccessor.java:104)
at java.lang.reflect.Method.invoke (Method.java:565)
at org.codehaus.mojo.exec.AbstractExecJavaBase.executeMainMethod (AbstractExecJavaBase.java:402)
at org.codehaus.mojo.exec.ExecJavaMojo.executeMainMethod (ExecJavaMojo.java:142)
at org.codehaus.mojo.exec.AbstractExecJavaBase.doExecClassLoader (AbstractExecJavaBase.java:377)
at org.codehaus.mojo.exec.AbstractExecJavaBase.lambda$execute$0 (AbstractExecJavaBase.java:287)
at java.lang.Thread.run (Thread.java:1474)
JDK 25




See Also