Как правило, массивы конкретных типов получаются так:
Integer[] array = stack.toArray(new Integer[stack.size()]);
Но так как вам нужно изменить тип массива, вам лучше повторить:
int i = 0;
double[] doubles = new double[stack.size()];
for (Integer value : stack) {
doubles[i++] = value.doubleValue();
}