Collection.toArray()
Копирует элементы коллекции в массив.
Доступно с: Java 1.2
Синтаксис
Object[] toArray()
default <T> T[] toArray(IntFunction<T[]> generator)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| generator | IntFunction<T[]> | Создаёт массив нужного типа, обычно `String[]::new`. |
Возвращаемое значение
T[]Новый массив с элементами коллекции.
Примеры
Массив нужного типа:
void main() {
List<String> names = List.of("Anna", "Oleg");
String[] arr = names.toArray(String[]::new);
IO.println(arr.length + " " + arr[1]);
IO.println(Arrays.toString(arr));
}Результат:
2 Oleg
[Anna, Oleg]Примечания
Версия без аргументов возвращает Object[], который нельзя привести к String[]. Поэтому передавайте генератор String[]::new (Java 11) или пустой массив: toArray(new String[0]). Массив примитивов так не получить — для int[] используйте stream().mapToInt(Integer::intValue).toArray().
См. также
Вопросы и ответы по теме
В учебнике
- Вспомогательные методы коллекций — Класс Collections и полезные методы Java: max, min, frequency, reverse, shuffle, nCopies, неизменяемые копии и представления, Arrays.asList.