- El método toArray() de la clase ArrayBlockingQueue :
El método toArray() de la clase ArrayBlockingQueue se usa para crear una array que contiene los mismos elementos que los de esta ArrayBlockingQueue, en la secuencia adecuada. Básicamente, copia todo el elemento de ArrayBlockingQueue a una nueva array. Este método se comporta como un puente entre la array y las colecciones.Sintaxis:
public Object[] toArray()
Valor devuelto: el método devuelve una array que contiene todos los elementos de esta cola.
Los siguientes programas ilustran el método toArray() de la clase ArrayBlockingQueue:
Programa 1:// Program Demonstrate how to apply toArray() method
// of ArrayBlockingQueue Class.
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 5 elements to ArrayBlockingQueue
queue.offer(
423
);
queue.offer(
422
);
queue.offer(
421
);
queue.offer(
420
);
queue.offer(
424
);
// Create a array by calling toArray() method
Object[] array = queue.toArray();
// Print queue
System.out.println(
"Queue is "
+ queue);
// 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 [423, 422, 421, 420, 424] The array created by toArray() is: 423 422 421 420 424
Programa 2:
// Program Demonstrate how to apply toArray() method
// of ArrayBlockingQueue Class.
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<String> queue =
new
ArrayBlockingQueue<String>(capacity);
// Add 5 elements to ArrayBlockingQueue
queue.offer(
"User"
);
queue.offer(
"Employee"
);
queue.offer(
"Manager"
);
queue.offer(
"Analyst"
);
queue.offer(
"HR"
);
// Create a array by calling toArray() method
Object[] array = queue.toArray();
// Print queue
System.out.println(
"Queue is "
+ queue);
// 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 [User, Employee, Manager, Analyst, HR] The array created by toArray() is: User Employee Manager Analyst HR
- El método toArray( T[] arr ) de la clase ArrayBlockingQueue :
El método toArray( T[] a ) de la clase ArrayBlockingQueue se usa para crear una array que contiene los mismos elementos que los de esta ArrayBlockingQueue, en la secuencia adecuada. Tiene una condición adicional. El tipo de la array devuelta es el mismo que la array especificada en el parámetro si el tamaño de la cola es menor o igual que la array especificada. 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.
Supongamos que una cola es una ArrayBlockingQueue y solo contiene strings. DespuésString[] new_arr = queue.toArray(new String[0]);
Tenga en cuenta que toArray(new Object[0]) es lo mismo que toArray() Method.
Sintaxis:
public T[] toArray(T[] a)
Parámetros: el método toma un parámetro, el arr , que es 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: el método devuelve una array que contiene todos los elementos de esta cola.
Excepción: el método puede generar una de las siguientes excepciones:
- ArrayStoreException : cuando la array pasada es de un tipo diferente y no se puede comparar con los elementos de la cola.
- NullPointerException : si la array es nula.
Los siguientes programas ilustran el método toArray(T[] a) de la clase ArrayBlockingQueue:
Programa 1:// Program Demonstrate how to apply toArray(T[] a) method
// of ArrayBlockingQueue Class.
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<String> queue =
new
ArrayBlockingQueue<String>(capacity);
// Add 5 elements to ArrayBlockingQueue
queue.offer(
"User"
);
queue.offer(
"Employee"
);
queue.offer(
"Manager"
);
queue.offer(
"Analyst"
);
queue.offer(
"HR"
);
// Creating the array
String[] array =
new
String[
5
];
// Calling toArray(T[] a) method
Object[] ReturnArray = queue.toArray(array);
// Print queue
System.out.println(
"Queue is "
+ queue);
// 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 retuned by method toArray()
System.out.println();
System.out.println(
"The array retuned by toArray() is:"
);
for
(Object i : ReturnArray) {
System.out.println(i);
}
}
}
Producción:Queue is [User, Employee, Manager, Analyst, HR] The array passed to toArray() is: User Employee Manager Analyst HR The array retuned by toArray() is: User Employee Manager Analyst HR
Referencia:
- https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ArrayBlockingQueue.html#toArray
- https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ArrayBlockingQueue.html#toArray-T:A
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA