ArrayBlockingQueue is bounded, blocking queue that stores the elements internally backed by an array.
- ArrayBlockingQueue class is a member of the Java Collections Framework.
- Bounded means it will have a fixed size, you can not store number the elements more than the capacity of the queue.
- The queue also follows FIFO (first-in-first-out) rule for storing and removing elements from the queue.
- If you try to put an element into a full queue or to take an element from an empty queue then the queue will block you.
The contains(Object o) method returns true if queue contains the object o passed as parameter. We can say that method returns true if and only if this queue contains at least one element e which is equal to object o passed as parameter i.e. o.equals(e).
Syntax:
public boolean contains(Object o)
Parameter:
o – object to check whether queue contains the specified object.
Return Value:
true if this queue contains the object
Below program illustrate contains method of ArrayBlockingQueue.
Example 1
// Java Program Demonstrate contains(Object o)// method of ArrayBlockingQueue.  import java.util.concurrent.ArrayBlockingQueue;  public class GFG {      public static void main(String[] args)    {        // define capacity of ArrayBlockingQueue        int capacity = 5;          // create object of ArrayBlockingQueue        ArrayBlockingQueue<Integer> queue            = new ArrayBlockingQueue<Integer>(capacity);          // Add elements to ArrayBlockingQueue        queue.add(23);        queue.add(32);        queue.add(45);        queue.add(12);          // check whether queue contains 23        boolean response1 = queue.contains(23);          // print after applying contains method with 23 as parameter        System.out.println("queue contains 23 : " + response1);          // check whether queue contains 99        boolean response2 = queue.contains(99);          // print after applying contains method with 99 as parameter        System.out.println("queue contains 99 : " + response2);    }} |
queue contains 23 : true queue contains 99 : false
Example 2
// Java Program Demonstrate contains(Object o)// method of ArrayBlockingQueue.import java.util.concurrent.ArrayBlockingQueue;  public class GFG {      // create a User Object with name and age as attribute    public class User {          public String name;        public String age;        User(String name, String age)        {            this.name = name;            this.age = age;        }    }      // Main Method    public static void main(String[] args)    {        GFG gfg = new GFG();        gfg.containsMethodExample();    }      // Method to give example of contains function    public void containsMethodExample()    {          // define capacity of ArrayBlockingQueue        int capacity = 5;          // create object of ArrayBlockingQueue        ArrayBlockingQueue<User> queue            = new ArrayBlockingQueue<User>(capacity);          User user1 = new User("Aman", "24");        User user2 = new User("Amar", "23");        User user3 = new User("Sanjeet", "25");        User user4 = new User("Suvo", "26");          // Add Objects to ArrayBlockingQueue        queue.add(user1);        queue.add(user2);        queue.add(user3);        queue.add(user4);          User user5 = new User("Ravi", "22");        // check whether queue contains User1        boolean response1 = queue.contains(user1);          // print after applying contains method with user1 as parameter        System.out.println("queue contains User having name "                           + user1.name + " : " + response1);          // check whether queue contains User5        boolean response2 = queue.contains(user5);          // print after applying contains method with user1 as parameter        System.out.println("queue contains User having name "                           + user5.name + " : " + response2);    }} |
queue contains User having name Aman : true queue contains User having name Ravi : false
