(1) ЕСТЬ ОШИБКА (при создании классического списка)
List<Integer> wordsList = new ArrayList<>(Arrays.asList(1,2,3,4));
Integer[] wordsArray = (Integer[]) wordsList.toArray();
ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Integer;
(2) НЕТ ОШИБКИ (тут создается не ArrayList, а др реализация - неизменяемый список, и ПОЧЕМУ ТО с ним примведение типа работает хорошо)
List<Integer> wordsList = Arrays.asList(1,2,3,4);
Integer[] wordsArray = (Integer[]) wordsList.toArray();