Научитесь преобразовывать ArrayList в массив с помощью метода toArray(). Метод toArray() возвращает массив, содержащий все элементы из списка — последовательно(от первого до последнего элемента в списке).
ArrayList<Строка> список = ...;Объект[] массив = список.toArray(); //1String[] массив = list.toArray(new String[list.size()]); //2
1. API ArrayList.toArray()
toArray() — это перегруженный метод:
public Object[] toArray();public <T> T[] toArray(T[] a);
- Первый метод не принимает никаких аргументов и возвращает Object[]. Мы должны перебрать массив, чтобы найти нужный элемент и привести его к нужному типу.
- Во втором методе тип времени выполнения возвращаемого массива совпадает с типом указанного массива. Если список помещается в указанный массив, он возвращается в него. В противном случае выделяется новый массив с типом времени выполнения указанного массива и размером этого списка.
Если после заполнения всех элементов массива в массиве осталось еще место, то во все свободные позиции заносится значение «null».
См. также: Java Stream toArray()
2. Примеры ArrayList toArray()
2.1 Использование toArray()
Программа на Java для преобразования ArrayList в Object[] и перебора содержимого массива.
ArrayList<String> list = new ArrayList<>();list.add("A");list.add("B");list.add("C");list.add("D");//Convert to object arrayObject[] array = list.toArray();//Iterate and convert to desired typefor(Object o : array) {String s =(String) o; //This casting is requiredSystem.out.println(s);}
Вывод программы.
ABCD
2.2 Использование toArray(T[] a)
Программа Java для преобразования ArrayList в String[].
ArrayList<String> list = new ArrayList<>(2);list.add("A");list.add("B");list.add("C");list.add("D");String[] array = list.toArray(new String[list.size()]);System.out.println(Arrays.toString(array));
Вывод программы.
[A, B, C, D]