Método AbstractCollection toArray() en Java con ejemplos

1. a la Array()

El método toArray() de Java AbstractCollection se utiliza para formar una array de los mismos elementos que la de AbstractCollection. Básicamente, copia todo el elemento de AbstractCollection a una nueva array.

Sintaxis:

Object[] arr = AbstractCollection.toArray()

Parámetros: El método no toma ningún parámetro.

Valor devuelto: el método devuelve una array que contiene los elementos similares a AbstractCollection.

Los siguientes programas ilustran el método AbstractCollection.toArray():

Programa 1:

// Java code to illustrate toArray()
  
import java.util.*;
  
public class AbstractCollectionDemo {
    public static void main(String args[])
    {
        // Creating an empty AbstractCollection
        AbstractCollection<String>
            abs_col = new PriorityQueue<String>();
  
        // Use add() method to add
        // elements into the AbstractCollection
        abs_col.add("Welcome");
        abs_col.add("To");
        abs_col.add("Geeks");
        abs_col.add("For");
        abs_col.add("Geeks");
  
        // Displaying the AbstractCollection
        System.out.println("The AbstractCollection: "
                           + abs_col);
  
        // Creating the array and using toArray()
        Object[] arr = abs_col.toArray();
  
        System.out.println("The array is:");
        for (int j = 0; j < arr.length; j++)
            System.out.println(arr[j]);
    }
}
Producción:

The AbstractCollection: [For, Geeks, To, Welcome, Geeks]
The array is:
For
Geeks
To
Welcome
Geeks

Programa 2:

// Java code to illustrate toArray()
  
import java.util.*;
  
public class AbstractCollectionDemo {
    public static void main(String args[])
    {
        // Creating an empty AbstractCollection
        AbstractCollection<Integer>
            abs_col = new PriorityQueue<Integer>();
  
        // Use add() method to add
        // elements into the AbstractCollection
        abs_col.add(10);
        abs_col.add(15);
        abs_col.add(30);
        abs_col.add(20);
        abs_col.add(5);
        abs_col.add(25);
  
        // Displaying the AbstractCollection
        System.out.println("The AbstractCollection: "
                           + abs_col);
  
        // Creating the array and using toArray()
        Object[] arr = abs_col.toArray();
  
        System.out.println("The array is:");
        for (int j = 0; j < arr.length; j++)
            System.out.println(arr[j]);
    }
}
Producción:

The AbstractCollection: [5, 10, 25, 20, 15, 30]
The array is:
5
10
25
20
15
30

2. aArray(arr[])

El método toArray(arr[]) de la clase AbstractCollection en Java se utiliza para formar una array de los mismos elementos que la de AbstractCollection. Devuelve una array que contiene todos los elementos de esta AbstractCollection en el orden correcto; el tipo de tiempo de ejecución de la array devuelta es el de la array especificada. Si AbstractCollection cabe en la array especificada, se devuelve allí. De lo contrario, se asigna una nueva array con el tipo de tiempo de ejecución de la array especificada y el tamaño de esta AbstractCollection.
Si AbstractCollection cabe en la array especificada con espacio de sobra (es decir, la array tiene más elementos que AbstractCollection), el elemento de la array que sigue inmediatamente al final de AbstractCollection se establece en nulo. (Esto es útil para determinar la longitud de AbstractCollection solo si la persona que llama sabe que AbstractCollection no contiene ningún elemento nulo).

Sintaxis:

Object[] arr1 = AbstractCollection.toArray(arr[])

Parámetros: el método acepta un parámetro arr[] que es la array en la que se almacenarán los elementos de AbstractCollection, si es lo suficientemente grande; de lo contrario, se asigna una nueva array del mismo tipo de tiempo de ejecución para este propósito.

Valor devuelto: el método devuelve una array que contiene los elementos similares a AbstractCollection.

Excepción: el método puede generar dos tipos de excepción:

  • ArrayStoreException : cuando la array mencionada es de un tipo diferente y no se puede comparar con los elementos mencionados en AbstractCollection.
  • NullPointerException : si la array es nula, se lanza esta excepción.

El siguiente programa ilustra el funcionamiento del método AbstractCollection.toArray(arr[]).

Programa 1: cuando la array es del tamaño de AbstractCollection

// Java code to illustrate toArray(arr[])
  
import java.util.*;
  
public class AbstractCollectionDemo {
    public static void main(String args[])
    {
        // Creating an empty AbstractCollection
        AbstractCollection<String>
            abs_col = new PriorityQueue<String>();
  
        // Use add() method to add
        // elements into the AbstractCollection
        abs_col.add("Welcome");
        abs_col.add("To");
        abs_col.add("Geeks");
        abs_col.add("For");
        abs_col.add("Geeks");
  
        // Displaying the AbstractCollection
        System.out.println("The AbstractCollection: "
                           + abs_col);
  
        // Creating the array and using toArray()
        String[] arr = new String[5];
        arr = abs_col.toArray(arr);
  
        // Displaying arr
        System.out.println("The arr[] is:");
        for (int j = 0; j < arr.length; j++)
            System.out.println(arr[j]);
    }
}
Producción:

The AbstractCollection: [For, Geeks, To, Welcome, Geeks]
The arr[] is:
For
Geeks
To
Welcome
Geeks

Programa 2: cuando la array es menor que el tamaño de AbstractCollection

// Java code to illustrate toArray(arr[])
  
import java.util.*;
  
public class AbstractCollectionDemo {
    public static void main(String args[])
    {
        // Creating an empty AbstractCollection
        AbstractCollection<String>
            abs_col = new PriorityQueue<String>();
  
        // Use add() method to add
        // elements into the AbstractCollection
        abs_col.add("Welcome");
        abs_col.add("To");
        abs_col.add("Geeks");
        abs_col.add("For");
        abs_col.add("Geeks");
  
        // Displaying the AbstractCollection
        System.out.println("The AbstractCollection: "
                           + abs_col);
  
        // Creating the array and using toArray()
        String[] arr = new String[1];
        arr = abs_col.toArray(arr);
  
        // Displaying arr
        System.out.println("The arr[] is:");
        for (int j = 0; j < arr.length; j++)
            System.out.println(arr[j]);
    }
}
Producción:

The AbstractCollection: [For, Geeks, To, Welcome, Geeks]
The arr[] is:
For
Geeks
To
Welcome
Geeks

Programa 3: cuando la array es mayor que el tamaño de AbstractCollection

// Java code to illustrate toArray(arr[])
  
import java.util.*;
  
public class AbstractCollectionDemo {
    public static void main(String args[])
    {
        // Creating an empty AbstractCollection
        AbstractCollection<String>
            abs_col = new PriorityQueue<String>();
  
        // Use add() method to add
        // elements into the AbstractCollection
        abs_col.add("Welcome");
        abs_col.add("To");
        abs_col.add("Geeks");
        abs_col.add("For");
        abs_col.add("Geeks");
  
        // Displaying the AbstractCollection
        System.out.println("The AbstractCollection: "
                           + abs_col);
  
        // Creating the array and using toArray()
        String[] arr = new String[10];
        arr = abs_col.toArray(arr);
  
        // Displaying arr
        System.out.println("The arr[] is:");
        for (int j = 0; j < arr.length; j++)
            System.out.println(arr[j]);
    }
}
Producción:

The AbstractCollection: [For, Geeks, To, Welcome, Geeks]
The arr[] is:
For
Geeks
To
Welcome
Geeks
null
null
null
null
null

Programa 4: Para demostrar NullPointerException

// Java code to illustrate toArray(arr[])
  
import java.util.*;
  
public class AbstractCollectionDemo {
    public static void main(String args[])
    {
        // Creating an empty AbstractCollection
        AbstractCollection<String>
            abs_col = new PriorityQueue<String>();
  
        // Use add() method to add
        // elements into the AbstractCollection
        abs_col.add("Welcome");
        abs_col.add("To");
        abs_col.add("Geeks");
        abs_col.add("For");
        abs_col.add("Geeks");
  
        // Displaying the AbstractCollection
        System.out.println("The AbstractCollection: "
                           + abs_col);
  
        try {
            // Creating the array
            String[] arr = null;
            // using toArray()
            // Since arr is null
            // Hence exception will be thrown
            arr = abs_col.toArray(arr);
  
            // Displaying arr
            System.out.println("The arr[] is:");
            for (int j = 0; j < arr.length; j++)
                System.out.println(arr[j]);
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}
Producción:

The AbstractCollection: [For, Geeks, To, Welcome, Geeks]
Exception: java.lang.NullPointerException

Publicación traducida automáticamente

Artículo escrito por Chinmoy Lenka 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 *