BlockingDeque offerLast() method in Java with examples

The offerLast(E e) method of BlockingDeque inserts the element passed in the parameter at the end of the Deque container. If the container’s capacity has exceeded, then it does not returns an exception as in case of add() and addLast() function.

Syntax:

public boolean offerLast(E e)

Parameters: This method accepts a mandatory parameter e which is the element to be inserted at the end of the BlockingDeque.



Returns: This method returns true if the element has been inserted, else it returns false.

Note: The offerLast() method of BlockingDeque has been inherited from the LinkedBlockingDeque class in Java.

Below programs illustrate offerLast() method of BlockingDeque:

Program 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java Program Demonstrate offerLast()
// method of BlockingDeque
  
import java.util.concurrent.LinkedBlockingDeque;
import java.util.concurrent.BlockingDeque;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
        throws IllegalStateException
    {
  
        // create object of BlockingDeque
        BlockingDeque<Integer> BD
            = new LinkedBlockingDeque<Integer>(4);
  
        // Add numbers to end of BlockingDeque
        BD.offerLast(7855642);
        BD.offerLast(35658786);
        BD.offerLast(5278367);
        BD.offerLast(74381793);
  
        // Cannot be inserted
        BD.offerLast(10);
  
        // cannot be inserted hence returns false
        if (!BD.offerLast(10))
            System.out.println("The element 10 cannot be inserted"
                               + " as capacity is full");
  
        // before removing print queue
        System.out.println("Blocking Deque: " + BD);
    }
}

chevron_right


Output:

The element 10 cannot be inserted as capacity is full
Blocking Deque: [7855642, 35658786, 5278367, 74381793]

Program 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java Program Demonstrate offerLast()
// method of BlockingDeque
  
import java.util.concurrent.LinkedBlockingDeque;
import java.util.concurrent.BlockingDeque;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
        throws IllegalStateException
    {
  
        // create object of BlockingDeque
        BlockingDeque<String> BD
            = new LinkedBlockingDeque<String>(4);
  
        // Add numbers to end of BlockingDeque
        BD.offerLast("abc");
        BD.offerLast("gopu");
        BD.offerLast("geeks");
        BD.offerLast("richik");
  
        // Cannot be inserted
        BD.offerLast("hii");
  
        // cannot be inserted hence returns false
        if (!BD.offerLast("hii"))
            System.out.println("The element 'hii' cannot be"
                               + " inserted as capacity is full");
  
        // before removing print queue
        System.out.println("Blocking Deque: " + BD);
    }
}

chevron_right


Output:

The element 'hii' cannot be inserted as capacity is full
Blocking Deque: [abc, gopu, geeks, richik]

Reference: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/BlockingDeque.html#offerLast(E)



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.