ConcurrentLinkedQueue addAll() method in Java
Last Updated :
26 Nov, 2018
The
addAll() method of
ConcurrentLinkedQueue is used to inserts all the elements of the Collection, passed as parameter to this method, at the end of a ConcurrentLinkedQueue. The insertion of element is in same order as returned by the collections iterator.
Syntax:
public boolean addAll(Collection<? extends E> c)
Parameter: This method takes a parameter
cwhich represent collection whose elements are needed to be appended at the end of this ConcurrentLinkedQueue.
Returns: This method returns
true if at least one action of insertion is performed.
Exception: This method throw two different Exceptions:
- NullPointerException - if the passed collection or any of its elements are null.
- IllegalArgumentException - if the passed collection is this queue itself.
Below programs illustrate addAll() method of ConcurrentLinkedQueue:
Example 1: Trying to add a list of numbers to ConcurrentLinkedQueue.
Java
// Java Program Demonstrate addAll()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue<Integer>
queue = new ConcurrentLinkedQueue<Integer>();
// Add Numbers to queue
queue.add(4353);
// create a ArrayList of Numbers
ArrayList<Integer> arraylist = new ArrayList<Integer>();
// add some numbers to ArrayList
arraylist.add(377139);
arraylist.add(624378);
arraylist.add(654793);
arraylist.add(764764);
arraylist.add(838494);
arraylist.add(632845);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
// Displaying the existing Collection
System.out.println("Collection to be added: " + arraylist);
// apply addAll() method and passed the arraylist as parameter
boolean response = queue.addAll(arraylist);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("Collection added: " + response);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
}
}
Output:
ConcurrentLinkedQueue: [4353]
Collection to be added: [377139, 624378, 654793, 764764, 838494, 632845]
Collection added: true
ConcurrentLinkedQueue: [4353, 377139, 624378, 654793, 764764, 838494, 632845]
Example 2: Trying to add a list of Strings to ConcurrentLinkedQueue.
Java
// Java Program Demonstrate addAll()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue<String>
queue = new ConcurrentLinkedQueue<String>();
// Add String to queue
queue.add("Aman");
queue.add("Amar");
// create a ArrayList of Numbers
ArrayList<String> arraylist = new ArrayList<String>();
// add some numbers to ArrayList
arraylist.add("Sanjeet");
arraylist.add("Rabi");
arraylist.add("Debasis");
arraylist.add("Raunak");
arraylist.add("Mahesh");
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
// Displaying the existing Collection
System.out.println("Collection to be added: " + arraylist);
// apply addAll() method and passed the arraylist as parameter
boolean response = queue.addAll(arraylist);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("Collection added: " + response);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
}
}
Output:
ConcurrentLinkedQueue: [Aman, Amar]
Collection to be added: [Sanjeet, Rabi, Debasis, Raunak, Mahesh]
Collection added: true
ConcurrentLinkedQueue: [Aman, Amar, Sanjeet, Rabi, Debasis, Raunak, Mahesh]
Example 3: Showing
NullPointerException
Java
// Java Program Demonstrate addAll()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue<String>
queue = new ConcurrentLinkedQueue<String>();
// Add String to queue
queue.add("Aman");
queue.add("Amar");
// create a ArrayList which is equal to null
ArrayList<String> arraylist = null;
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
// Displaying the existing Collection
System.out.println("Collection to be added: " + arraylist);
try {
// apply addAll() method and pass the arraylist as parameter
// since the arraylist is null, exception will be thrown
boolean response = queue.addAll(arraylist);
}
catch (NullPointerException e) {
System.out.println("Exception thrown while adding null: " + e);
}
}
}
Output:
ConcurrentLinkedQueue: [Aman, Amar]
Collection to be added: null
Exception thrown while adding null: java.lang.NullPointerException
Example 4: Showing IllegalArgumentException
Java
// Java Program Demonstrate addAll()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue<String>
queue = new ConcurrentLinkedQueue<String>();
// Add String to queue
queue.add("Aman");
queue.add("Amar");
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
try {
// apply addAll() method and passed the queue as parameter
boolean response = queue.addAll(queue);
}
catch (IllegalArgumentException e) {
System.out.println("Exception thrown while adding queue"
+ " to itself when collection is required: " + e);
}
}
}
Output:
ConcurrentLinkedQueue: [Aman, Amar]
Exception thrown
while adding queue to itself
when collection is required: java.lang.IllegalArgumentException
Reference: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html#addAll-java.util.Collection-