AbstractQueue addAll() method in Java with examples
Last Updated :
11 Jul, 2025
The
addAll(E e) method of
AbstractQueue adds all of the elements in the specified collection to this queue.
Syntax:
public boolean addAll(Collection c)
Parameters: This method accepts a mandatory parameter
collection containing elements to be added to this queue
Returns: The method returns
true if this queue changed as a result of the call
Exception: This method throws following exceptions:
- IllegalStateException: if not all the elements can be added at this time due to insertion restrictions
- NullPointerException: if the specified collection contains a null element and this queue does not permit null elements, or if the specified collection is null
- ClassCastException - if the class of an element of the specified collection prevents it from being added to this queue
- IllegalArgumentException - if some property of an element of the specified collection prevents it from being added to this queue, or if the specified collection is this queue
Below programs illustrate addAll() method:
Program 1:
Java
// Java program to illustrate the
// AbstractQueue addAll() method
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
// Creating object of AbstractQueue<Integer>
AbstractQueue<Integer>
AQ1 = new LinkedBlockingQueue<Integer>();
// Populating AQ1
AQ1.add(10);
AQ1.add(20);
AQ1.add(30);
AQ1.add(40);
AQ1.add(50);
// print AQ
System.out.println("AbstractQueue1 contains : " + AQ1);
AbstractQueue<Integer>
AQ2 = new LinkedBlockingQueue<Integer>();
// print AQ2 initially
System.out.println("AbstractQueue2 initially contains : " + AQ2);
// adds elements of AQ1 in AQ2
AQ2.addAll(AQ1);
System.out.println("AbstractQueue1 after addition contains : " + AQ2);
}
}
Output:
AbstractQueue1 contains : [10, 20, 30, 40, 50]
AbstractQueue2 initially contains : []
AbstractQueue1 after addition contains : [10, 20, 30, 40, 50]
Program 2: Program for
IllegalStateException
Java
// Java program to illustrate the
// AbstractQueue addAll() method
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
try {
// Creating object of AbstractQueue<Integer>
AbstractQueue<Integer>
AQ1 = new LinkedBlockingQueue<Integer>();
// Populating AQ1
AQ1.add(10);
AQ1.add(20);
AQ1.add(30);
AQ1.add(40);
AQ1.add(50);
// print AQ
System.out.println("AbstractQueue1 contains : " + AQ1);
AbstractQueue<Integer>
AQ2 = new LinkedBlockingQueue<Integer>(3);
// print AQ2 initially
System.out.println("AbstractQueue2 initially contains : " + AQ2);
// adds elements of AQ1 in AQ2
AQ2.addAll(AQ1);
System.out.println("AbstractQueue1 after addition contains : " + AQ2);
}
catch (Exception e) {
System.out.println("Exception: " + e);
}
}
}
Output:
AbstractQueue1 contains : [10, 20, 30, 40, 50]
AbstractQueue2 initially contains : []
Exception: java.lang.IllegalStateException: Queue full
Program 3: Program for
NullPointerException
Java
// Java program to illustrate the
// AbstractQueue addAll() method
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
try {
// Creating object of AbstractQueue<Integer>
AbstractQueue<Integer>
AQ1 = null;
// print AQ
System.out.println("AbstractQueue1 contains : " + AQ1);
AbstractQueue<Integer>
AQ2 = new LinkedBlockingQueue<Integer>(3);
// print AQ2 initially
System.out.println("AbstractQueue2 initially contains : " + AQ2);
// adds elements of AQ1 in AQ2
AQ2.addAll(AQ1);
System.out.println("AbstractQueue1 after addition contains : " + AQ2);
}
catch (Exception e) {
System.out.println("Exception: " + e);
}
}
}
Output:
AbstractQueue1 contains : null
AbstractQueue2 initially contains : []
Exception: java.lang.NullPointerException
Reference: https://docs.oracle.com/javase/8/docs/api/java/util/AbstractQueue.html#addAll-E-
Explore
Java Basics
OOP & Interfaces
Collections
Exception Handling
Java Advanced
Practice Java
My Profile