Método PriorityBlockingQueue toArray() en Java

aArray()

El método toArray de PriorityBlockingQueue se usa para crear una array que tiene los mismos elementos que el de esta PriorityBlockingQueue, en la secuencia adecuada. En realidad, este método copia todo el elemento de PriorityBlockingQueue en una nueva array. Este método se comporta como un puente entre la array y PriorityBlockingQueue.

Sintaxis: 

public Object[] toArray()

Valor devuelto: este método devuelve una array que contiene los elementos de PriorityBlockingQueue.

Los siguientes programas ilustran el método toArray() de la clase PriorityBlockingQueue:

Ejemplo 1: programa para demostrar el método toArray() en PriorityBlockingQueue para crear una array de números a partir de PriorityBlockingQueue que contiene números. 

Java

// Java Program Demonstrate toArray()
// method of PriorityBlockingQueue
 
import java.util.concurrent.PriorityBlockingQueue;
public class GFG {
 
    public static void main(String[] args)
    {
        // define capacity of PriorityBlockingQueue
        int capacityOfQueue = 5;
 
        // create object of PriorityBlockingQueue
        PriorityBlockingQueue<Integer> PrioQueue
            = new PriorityBlockingQueue<Integer>(capacityOfQueue);
 
        // Add numbers to PriorityBlockingQueue
        PrioQueue.offer(35658786);
        PrioQueue.offer(5278367);
        PrioQueue.offer(74381793);
        PrioQueue.offer(87625142);
 
        // create an array of elements of PriorityBlockingQueue
        Object[] array = PrioQueue.toArray();
 
        // print elements of array
        System.out.println("Array Contains:");
        for (Object i : array) {
            System.out.print(i + " ");
        }
    }
}
Producción: 

Array Contains:
5278367 35658786 74381793 87625142

 

Ejemplo 2: programa para demostrar el método toArray() en PriorityBlockingQueue para crear una array de strings a partir de PriorityBlockingQueue que contiene valores de string.

Java

// Java Program Demonstrate toArray()
// method of PriorityBlockingQueue
 
import java.util.concurrent.PriorityBlockingQueue;
import java.util.*;
 
public class GFG {
    public static void main(String[] args)
    {
 
        // define capacity of PriorityBlockingQueue
        int capacityOfQueue = 5;
 
        // create object of PriorityBlockingQueue which contains
        // name of students
        PriorityBlockingQueue<String> names
            = new PriorityBlockingQueue<String>(capacityOfQueue);
 
        // Add names of students of girls college
        names.offer("Joyita");
        names.offer("Bristi");
        names.offer("Riya");
 
        // Create a array by calling toArray() method
        Object[] array = names.toArray();
 
        // Print List of names
        System.out.println("Queue is " + names);
 
        // Print elements of array
        System.out.println("The array created by toArray() is:");
        for (Object i : array) {
            System.out.println(i + " ");
        }
    }
}
Producción: 

Queue is [Bristi, Joyita, Riya]
The array created by toArray() is:
Bristi 
Joyita 
Riya

 

aArray(T[] a)

El método toArray(T[] a) de PriorityBlockingQueue se usa para devolver una array que contiene los mismos elementos que los de esta PriorityBlockingQueue, en la secuencia adecuada. Este método se diferencia de toArray() en una sola condición. El tipo de la array devuelta es el mismo que la array pasada en el parámetro, si el tamaño de PriorityBlockingQueue es menor o igual que la array pasada. De lo contrario, se asigna una nueva array con el mismo tipo que la array especificada y el tamaño de la array es igual al tamaño de esta cola. Este método se comporta como un puente entre la array y las colecciones.

Sintaxis: 

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

Parámetro: este método toma como parámetro una array en la que se copiarán todos los elementos de la cola, si es lo suficientemente grande. De lo contrario, se le asigna una nueva array del mismo tipo de tiempo de ejecución.

Valor devuelto: este método devuelve una array que contiene todos los elementos de esta cola.

Excepción Este método arroja las siguientes excepciones:  

  • ArrayStoreException: cuando la array pasada es de un tipo diferente al tipo de elementos de PriorityBlockingQueue.
  • NullPointerException: si la array pasada es nula.

Los siguientes programas ilustran el método toArray(T[] a) de la clase PriorityBlockingQueue:

Ejemplo 1: Programa para demostrar el método toArray(T[] a) en PriorityBlockingQueue. 

Java

// Java Program Demonstrate toArray(T[] a)
// method of PriorityBlockingQueue
 
import java.util.concurrent.PriorityBlockingQueue;
import java.util.concurrent.TimeUnit;
 
public class GFG {
 
    public static void main(String[] args)
        throws InterruptedException
    {
        // define capacity of PriorityBlockingQueue
        int capacityOfQueue = 3;
 
        // create object of PriorityBlockingQueue
        PriorityBlockingQueue<String> PrioQueue
            = new PriorityBlockingQueue<String>(capacityOfQueue);
 
        // Add names of students of girls college
        PrioQueue.offer("Joyi");
        PrioQueue.offer("Rani");
        PrioQueue.offer("Riya");
 
        // Creating the array
        String[] array = new String[capacityOfQueue];
 
        // Calling toArray(T[] a) method
        Object[] ReturnArray = PrioQueue.toArray(array);
 
        // Print queue
        System.out.println("Queue is " + PrioQueue);
 
        // Print elements of array passed as parameter
        System.out.println();
        System.out.println("The array passed to toArray() is:");
        for (Object i : array) {
            System.out.println(i);
        }
 
        // Print elements of array returned by method toArray()
        System.out.println();
        System.out.println("The array returned by toArray() is:");
        for (Object i : ReturnArray) {
            System.out.println(i);
        }
    }
}
Producción

Queue is [Joyi, Rani, Riya]

The array passed to toArray() is:
Joyi
Rani
Riya

The array returned by toArray() is:
Joyi
Rani
Riya

Ejemplo 2: Programa para demostrar la excepción lanzada por el método toArray(T[] a) de PriorityBlockingQueue.

Java

// Java Program Demonstrate toArray(T[] a)
// method of PriorityBlockingQueue
 
import java.util.concurrent.PriorityBlockingQueue;
import java.util.concurrent.TimeUnit;
 
public class GFG {
 
    public static void main(String[] args)
        throws InterruptedException
    {
        // define capacity of PriorityBlockingQueue
        int capacityOfQueue = 3;
 
        // create object of PriorityBlockingQueue
        PriorityBlockingQueue<String> PrioQueue
            = new PriorityBlockingQueue<String>(capacityOfQueue);
 
        // Add names of students of girls college
        PrioQueue.offer("Joyi");
        PrioQueue.offer("Rani");
        PrioQueue.offer("Riya");
 
        // Creating the array with null value
        String[] array = null;
 
        try {
            // Calling toArray(T[] a) method
            Object[] ReturnArray = PrioQueue.toArray(array);
        }
        catch (Exception e) {
            System.out.println("Exception thrown:" + e);
        }
    }
}
Producción: 

Exception thrown:java.lang.NullPointerException

 

Referencia: 

Publicación traducida automáticamente

Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *