Почему нет ничего подобного?Почему нет конструктора списка с использованием varargs?
public List<T>(T... args)
List<T> list = new List<T>(t1, t2, t3, t4);
Я всегда вижу такие вещи, как:
List<T> list = Arrays.asList(new T[]{t1, t2, t3, t4});
Почему нет ничего подобного?Почему нет конструктора списка с использованием varargs?
public List<T>(T... args)
List<T> list = new List<T>(t1, t2, t3, t4);
Я всегда вижу такие вещи, как:
List<T> list = Arrays.asList(new T[]{t1, t2, t3, t4});
Я понимаю вашу потребность. У меня такое же очень часто. Это спецификация спецификации JDK. Вы можете создать свой собственный класс утилиты, если хотите, регулярно.
Предупреждение: Arrays.asList(vargs)
и new ArrayList()
возвращает две реализации, очень разные функционально.
Arrays.asList(args)
возвращает список фиксированного размера, поддерживаемый указанным массивом. Это минимальная реализация списка со многими неподдерживаемыми операциями. Любой метод, который модифицирует ArrayList, выдает исключение UnsupportedOperationException. Итак, чтобы создать яркий способ создания классической Java, вы должны написать
List myList = new ArrayList(Arrays.asList(t1, t2, t3, t4));