Когда я хочу, чтобы бросить ArrayList
объект в List
ссылки, которые вернулись из метода:список броска к ArrayList
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
Тип возвращаемого из метода asList
является List
ссылка на ArrayList
объект а, значит, я могу бросить его на ArrayList
ссылка. такой, что:
String[] colors = { "black", "blue", "yellow" };
ArrayList<String> links = (ArrayList<String>) Arrays.asList(colors) ;
Но этот код сделал во время выполнения ошибки:
Исключение в потоке "главный" java.lang.ClassCastException: java.util.Arrays $ ArrayList не может быть приведен к java.util.ArrayList
Почему это произошло?
ArrayList, который возвращается из Arrays.asList, не является фактическим arraylist, это всего лишь оболочка ..., которая не позволяет вносить изменения в список –
, что вы имеете в виду "wrapper" ?? – Aladdin