Можно ли инициализировать List<T>
, чтобы оно содержало заданное число null
с, где T - параметр типа класса, членом которого является список? Я уверен, что могу сделать это с помощью цикла, но хотел бы знать, возможно ли это без.
List<T> myList = new ArrayList<T>(numEls);
создает список с заданной емкостью, но размером 0, поэтому myList.get(x)
терпит неудачу для всех x
, как и, например, myList.set(numEls-1,null)
.
myList = Arrays.asList(new T[numEls]);
не компилируется, а
myList = (List<T>) Arrays.asList(new Object[numEls]);
компилируется в Eclipse (с предупреждением Unchecked cast), но не с javac.
Обновление: Спасибо за ответы! Однако я нашел другое, довольно короткое, решение, близкое к моей последней попытке выше, которое компилируется как в eclipse, так и с нашей автоматической системой сборки: Приведите массив, а не список!
myList = Arrays.asList((T[]) new Object[numEls]);