Deque addLast() method in Java
Last Updated :
03 Dec, 2019
The
addLast(E e) method of
Deque Interface inserts the element passed in the parameter to the end of the Deque if there is space. If the Deque is capacity restricted and no space is left for insertion, it returns an
IllegalStateException. The function returns true on successful insertion.
Syntax:
boolean addLast(E e)
Parameters: This method accepts a mandatory parameter
e which is the element to be inserted in the end of the Deque.
Returns: This method returns true on successful insertion.
Exceptions: The function throws four exceptions which are described as below:
- ClassCastException: when the class of the element to be entered prevents it from being added to this container.
- IllegalStateException: when the capacity of the container is full and insertion is done.
- IllegalArgumentException: when some property of the element prevents it to be added to the Deque.
- NullPointerException: when the element to be inserted is passed as null and the Deque's interface does not allow null elements.
Below programs illustrate
implementation of addLast() method by various classes that implement Deque Interface:
Program 1: With the help of
LinkedList.
Java
// Java Program Demonstrate addLast()
// method of Deque
import java.util.*;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of De1ue
Deque<Integer> DQ
= new LinkedList<Integer>();
// Add numbers to end of Deque
DQ.addLast(7855642);
DQ.addLast(35658786);
DQ.addLast(5278367);
DQ.addLast(74381793);
// before removing print Deque
System.out.println("Deque: " + DQ);
}
}
Output:
Deque: [7855642, 35658786, 5278367, 74381793]
Program 2: With the help of
LinkedBlockingDeque.
Java
// Java Program Demonstrate addLast()
// 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 De1ue
Deque<Integer> DQ
= new LinkedBlockingDeque<Integer>();
// Add numbers to end of Deque
DQ.addLast(7855642);
DQ.addLast(35658786);
DQ.addLast(5278367);
DQ.addLast(74381793);
// before removing print Deque
System.out.println("Deque: " + DQ);
}
}
Output:
Deque: [7855642, 35658786, 5278367, 74381793]
Program 3: With the help of
ArrayDeque.
Java
// Java Program Demonstrate addLast()
// method of Deque
import java.util.*;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of De1ue
Deque<Integer> DQ
= new ArrayDeque<Integer>();
// Add numbers to end of Deque
DQ.addLast(7855642);
DQ.addLast(35658786);
DQ.addLast(5278367);
DQ.addLast(74381793);
// before removing print Deque
System.out.println("Deque: " + DQ);
}
}
Output:
Deque: [7855642, 35658786, 5278367, 74381793]
Program 4: With the help of
ConcurrentLinkedDeque.
Java
// Java Program Demonstrate addLast()
// 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 De1ue
Deque<Integer> DQ
= new ConcurrentLinkedDeque<Integer>();
// Add numbers to end of Deque
DQ.addLast(7855642);
DQ.addLast(35658786);
DQ.addLast(5278367);
DQ.addLast(74381793);
// before removing print Deque
System.out.println("Deque: " + DQ);
}
}
Output:
Deque: [7855642, 35658786, 5278367, 74381793]
Below programs illustrate
exceptions thrown by addLast() method:
Program 5: To show
NullPointerException.
Java
// Java Program Demonstrate addLast()
// method of DeQue when Null is passed
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.addLast(7855642);
DQ.addLast(35658786);
DQ.addLast(5278367);
try {
// when null is inserted
DQ.addLast(null);
}
catch (Exception e) {
System.out.println(
"Exception thrown "
+ "while inserting null: "
+ e);
}
}
}
Output:
Exception thrown while inserting null: java.lang.NullPointerException
Program 6: To show
IllegalStateException.
Java
// Java Program Demonstrate addLast()
// method of Deque when capacity is full
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>(3);
// Add numbers to end of Deque
DQ.addLast(7855642);
DQ.addLast(35658786);
DQ.addLast(5278367);
try {
// when capacity is full
DQ.addLast(10);
}
catch (Exception e) {
System.out.println(
"Exception thrown "
+ "while inserting an element "
+ "when the Deque is already "
+ "full: " + e);
}
}
}
Output:
Exception thrown while inserting an element when the Deque is already full: java.lang.IllegalStateException: Deque full
Note: The other two exceptions are internal and are caused depending on the compiler hence cannot be shown in the online compiler.
Reference: https://docs.oracle.com/javase/8/docs/api/java/util/Deque.html#addLast-E-