ConcurrentLinkedQueue toArray() Method in Java

  1. toArray() : The toArray() method of ConcurrentLinkedQueue is used to returns an array of the same elements as that of the ConcurrentLinkedQueue in proper sequence. Basically, it copies all the element from a ConcurrentLinkedQueue to a new array. This method behaves as a bridge between array and ConcurrentLinkedQueue.

    Syntax:

    public Object[] toArray()

    Returns: The method returns an array containing the elements similar to the ConcurrentLinkedQueue.

    Below programs illustrate the java.util.concurrent.ConcurrentLinkedQueue.toArray() method.

    Example 1:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java Program Demonstrate toArray()
    // method of ConcurrentLinkedQueue
      
    import java.util.concurrent.ConcurrentLinkedQueue;
      
    public class GFG {
      
        public static void main(String[] args)
        {
            // create object of ConcurrentLinkedQueue
            ConcurrentLinkedQueue<Integer> queue
                = new ConcurrentLinkedQueue<Integer>();
      
            // Add element to ConcurrentLinkedQueue
            queue.add(2300);
            queue.add(1322);
            queue.add(8945);
            queue.add(6512);
      
            // print queue details
            System.out.println("Queue Contains " + queue);
      
            // apply toArray() method on queue
            Object[] array = queue.toArray();
      
            // Print elements of array
            System.out.println("The array contains:");
            for (Object i : array) {
                System.out.print(i + "\t");
            }
        }
    }

    chevron_right

    
    

    Output:

    Queue Contains [2300, 1322, 8945, 6512]
    The array contains:
    2300    1322    8945    6512
    

    Example 2:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java Program Demonstrate toArray()
    // method of ConcurrentLinkedQueue
      
    import java.util.concurrent.ConcurrentLinkedQueue;
      
    public class GFG {
        public static void main(String args[])
        {
            // Creating a ConcurrentLinkedQueue
            ConcurrentLinkedQueue<String>
                queue = new ConcurrentLinkedQueue<String>();
      
            // elements into the Queue
            queue.add("Welcome");
            queue.add("To");
            queue.add("Jungle");
      
            // Displaying the ConcurrentLinkedQueue
            System.out.println("The ConcurrentLinkedQueue: "
                               + queue);
      
            // Creating the array and using toArray()
            Object[] arr = queue.toArray();
      
            System.out.println("The array is:");
            for (int j = 0; j < arr.length; j++)
                System.out.println(arr[j]);
        }
    }

    chevron_right

    
    

    Output:

    The ConcurrentLinkedQueue: [Welcome, To, Jungle]
    The array is:
    Welcome
    To
    Jungle
    
  2. toArray(T[] a) : The toArray(T[] a) method of ConcurrentLinkedQueue is used to an array containing the same elements as that of this ConcurrentLinkedQueue in proper sequence. This method differs from toArray() in only one condition. The type of the returned array is the same as the passed array in the parameter, if the ConcurrentLinkedQueue size is less than or equal to the passed array. Otherwise, a new array is allocated with the type same as the specified array and size of the array is equal to the size of this queue. This method behaves as a bridge between array and collections.

    Syntax:

    public <T> T[] toArray(T[] a)

    Parameter: This method takes array as parameter into which all of the elements of the queue are to be copied, if it is big enough. Otherwise, a new array of the same runtime type is allocated to this.

    Returns: This method returns array containing the elements similar to the ConcurrentLinkedQueue.

    Exception: This method throws following exceptions:

    • ArrayStoreException: When the passed array is of the different type from the type of elements of ConcurrentLinkedQueue.
    • NullPointerException: If the passed array is Null.

    Below programs illustrate the java.util.concurrent.ConcurrentLinkedQueue.toArray(T[] a) method.

    Example 1:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java Program Demonstrate toArray()
    // method of ConcurrentLinkedQueue
      
    import java.util.concurrent.ConcurrentLinkedQueue;
      
    public class GFG {
      
        public static void main(String[] args)
        {
            // create object of ConcurrentLinkedQueue
            ConcurrentLinkedQueue<String> queue
                = new ConcurrentLinkedQueue<String>();
      
            // elements into the Queue
            queue.add("Welcome");
            queue.add("To");
            queue.add("Jungle");
      
            // print queue details
            System.out.println("Queue Contains " + queue);
      
            // the array to pass in toArray()
            // array has size equal to size of ConcurrentLinkedQueue
            String[] passArray = new String[queue.size()];
      
            // Calling toArray(T[] a) method
            Object[] array = queue.toArray(passArray);
      
            // Print elements of passed array
            System.out.println("\nThe array passed :");
            for (String i : passArray) {
                System.out.print(i + " ");
            }
      
            System.out.println();
      
            // Print elements of returned array
            System.out.println("\nThe array returned :");
            for (Object i : array) {
                System.out.print(i + " ");
            }
        }
    }

    chevron_right

    
    

    Output:

    Queue Contains [Welcome, To, Jungle]
    
    The array passed :
    Welcome To Jungle 
    
    The array returned :
    Welcome To Jungle
    

    Example 2: To show ArrayStoreException

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java Program Demonstrate toArray()
    // method of ConcurrentLinkedQueue
      
    import java.util.concurrent.ConcurrentLinkedQueue;
      
    public class GFG {
      
        public static void main(String[] args)
        {
            // create object of ConcurrentLinkedQueue
            ConcurrentLinkedQueue<Integer> queue
                = new ConcurrentLinkedQueue<Integer>();
      
            // Add element to ConcurrentLinkedQueue
            queue.add(2323);
            queue.add(2472);
            queue.add(4235);
            queue.add(1242);
      
            // the array to pass in toArray()
            // array has size equal to size of ConcurrentLinkedQueue
            String[] passArray = new String[queue.size()];
      
            // Calling toArray(T[] a) method
            try {
                Object[] array = queue.toArray(passArray);
            }
            catch (ArrayStoreException e) {
                System.out.println("Exception: " + e);
            }
        }
    }

    chevron_right

    
    

    Output:

    Exception: java.lang.ArrayStoreException: java.lang.Integer
    

    Example 2: To show NullPointerException

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java Program Demonstrate toArray()
    // method of ConcurrentLinkedQueue
      
    import java.util.concurrent.ConcurrentLinkedQueue;
      
    public class GFG {
      
        public static void main(String[] args)
        {
            // create object of ConcurrentLinkedQueue
            ConcurrentLinkedQueue<Integer> queue
                = new ConcurrentLinkedQueue<Integer>();
      
            // Add element to ConcurrentLinkedQueue
            queue.add(2323);
            queue.add(2472);
            queue.add(4235);
            queue.add(1242);
      
            // the array to pass
            String[] passArray = null;
      
            // Calling toArray(T[] a) method
            try {
                Object[] array = queue.toArray(passArray);
            }
            catch (NullPointerException e) {
                System.out.println("Exception: " + e);
            }
        }
    }

    chevron_right

    
    

    Output:

    Exception: java.lang.NullPointerException
    


My Personal Notes arrow_drop_up

I am a Developer I love to code and bring my ideas alive

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.