List#toArray()
из List<Double>
возвращает Double[]
. Double[]
отличается от double[]
. Поскольку массивы являются объектами, а не примитивами, правила autoboxing здесь не применяются и не могут применяться.
Либо используйте Double[]
вместо:
Double[] array = list.toArray(new Double[list.size()]);
... или создайте double[]
самостоятельно, используя простой цикл for
:
double[] array = new double[list.size()];
for (int i = 0; i < list.size(); i++) {
array[i] = list.get(i); // Watch out for NullPointerExceptions!
}