/** * Returns an array containing all of the elements in this deque in proper * sequence (from first to last element). * * <p> * The returned array will be "safe" in that no references to it are * maintained by this deque. (In other words, this method must allocate a * new array). The caller is thus free to modify the returned array. * * <p> * This method acts as bridge between array-based and collection-based APIs. * * @return an array containing all of the elements in this deque */ @Override public Object[] toArray() { return copyElements(new Object[size()]); }
if (a.length < size) a = (T[]) java.lang.reflect.Array.newInstance(a.getClass().getComponentType(), size); copyElements(a); if (a.length > size) a[size] = null;