Conversión entre matriz y lista

1. La lista se convierte en una matriz. (La lista aquí es la entidad y es ArrayList)

Llame al método toArray de ArrayList.

toArray

public T[] toArray(T[] a) Devuelve una matriz que contiene todos los elementos de esta lista en el orden correcto. Devuelve el tipo de tiempo de ejecución de la matriz Just; especifique el tipo de tiempo de ejecución de la matriz. Si la lista cabe en la matriz especificada, devuelve la matriz en la que encajan los elementos de esta lista. De lo contrario, se asigna una nueva matriz según el tipo de tiempo de ejecución de la matriz especificada y el tamaño de esta lista.

Si la matriz especificada puede contener la lista y queda espacio (es decir, la matriz tiene más elementos que la lista), entonces el elemento de la matriz que sigue inmediatamente al final de la colección se establece en nulo. Esto es útil para determinar la longitud de una lista, pero solo si la persona que llama sabe que la lista no contiene ningún elemento nulo.

Especificado por:

toArray en la interfaz Colección

Especificado por:

toArray en la interfaz Lista

Anulaciones:

toArray en la clase AbstractCollection

Parámetros:

a - la matriz para almacenar los elementos de la lista, si es así. es lo suficientemente grande; de ​​lo contrario, es una nueva matriz del mismo tipo de tiempo de ejecución asignada para almacenar los elementos de la lista.

Devuelve:

Un array que contiene los elementos de la lista.

Lanza:

ArrayStoreException: si el tipo de tiempo de ejecución de a no es un supertipo del tipo de tiempo de ejecución de cada elemento de esta lista.

Uso específico:

Lista lista = new ArrayList();

list.add("1");

lista. add("2");

final int size = list.size();

String[] arr = (String[])list.toArray(new String[size] );

También puedes usar este método

String[] userid = {"aa","bb","cc"};

Lista< String > userList = new ArrayList();

Collections.addAll(userList, userid);

2.

Llame al método asList de Arrays.

asList

public static List asList(T... a) devuelve una matriz especificada Listas de tamaño fijo admitidas. (Los cambios en la lista devuelta se escriben "a través" de la matriz). Este método, junto con Collection.toArray, actúa como un puente entre la API basada en matrices y la API basada en colecciones. La lista devuelta es serializable e implementa RandomAccess.

Este método también proporciona un método conveniente para crear una lista de longitud fija que se inicializa para contener múltiples elementos:

List stooges = Arrays.asList("Larry", "Moe" , "Curly");

Parámetros:

a: una matriz que admite listas.

Devuelve:

La vista de lista de la matriz especificada.

Ver también:

Collection.toArray()

Uso específico:

String[] arr = new String[] { " 1", "2"};

Lista lista = Arrays.asList(arr);