无法将Arraylist转换为Double以生成一系列双打

时间:2016-01-20 20:49:26

标签: java arraylist casting

我正在尝试将双精度数组列表转换为双精度数组。当我尝试使用以下行投射它时:

double[] hist_list = hist_array.Cast<Double>().toArray();

我收到以下语法错误:

Syntax error on token "(", Expression expected after this token

并且错误在Cast之后的第一个括号上。在这种情况下,Cast()似乎是一个无争议的方法,所以这里出了什么问题?

2 个答案:

答案 0 :(得分:1)

您无法轻松将其转换为基本类型的双数组,但您可以轻松将其转换为Double []数组,如下所示:

Double[] doubleArray = hist_array.toArray(new Double[hist_array.size()]);

答案 1 :(得分:0)

这是你可以做到的:

ArrayList<Double> l = new ArrayList<Double>();
Object[] returnArrayObject = l.toArray();
double returnArray[] = new double[returnArrayObject.length];
for (int i = 0; i < returnArrayObject.length; i++){
     returnArray[i] = (Double)  returnArrayObject[i];
}