Назад к задачам
Junior — Middle+
24

Преобразование List<T> в массив T[] с гарантией типа

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Реализуйте метод convert, который:

  1. Принимает объект Class<T> – класс элементов будущего массива.
  2. Принимает List<T> – набор значений, которые нужно разместить в массиве.
  3. Возвращает массив T[], содержащий те же элементы, что и список.
  4. Обеспечивает соответствие типа элементов массива переданному классу.
  5. Порядок элементов в результирующем массиве может быть произвольным.
import java.util.List;
import java.lang.reflect.Array;

public class GenericArray {
    public static void main(String[] args) {
        String[] strings = GenericArray.convert(
                String.class,
                List.of("Val1", "Val2", "Val3")
        );
        System.out.println(java.util.Arrays.toString(strings));
    }

    public static <T> T[] convert(Class<T> clazz, List<T> values) {        
        return null;
    }
}