java - toArray() 返回对象[]

标签 java arrays arraylist collections toarray

我正在尝试使用 toArray() 将 ArrayList 转换为数组,但它返回一个 object[] 而不是 double[]。见下文:

double [] arr = arrList.toArray(new Double[arrList.size()]);

我收到不兼容类型错误。

这是 arrList 包含的内容:

I/System.out: [0.0, 2.455430030822754, 1.834529995918274, 0.7368429899215698, -0.5264459848403931, -1.5101100206375122, -1.8526500463485718, -1.6131700277328491, -0.9388419985771179, 0.053711701184511185, 0.35541099309921265, -0.18560799956321716, -0.884518027305603, -1.4304900169372559, -1.5486400127410889, -0.943471014499, 0.0]

获取方式如下:

private void rec(SensorEvent event) {

    double x = event.values[0];

    arrList.add(x);

}

我尝试过不调整数组大小(即使用 new Double[0]),尽管我认为这不是问题,但这也不起作用。

我在网上寻找类似的问题,我发现的只是字符串示例,我认为 Double 可能是问题所在?不太确定。

在这方面相当新,所以如果显而易见的话,我们深表歉意。

最佳答案

double [] arr = arrList.toArray(new Double[arrList.size()]);

double[]Double[] 是不同的类型。虽然 Java 可以通过自动装箱和自动拆箱在 doubleDouble 之间进行转换,但它无法从 Double[] 转换为 double[].您可以通过以下方式解决问题:

Double [] arr = arrList.toArray(new Double[arrList.size()]);

关于java - toArray() 返回对象[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60100532/

相关文章:

java - Arraylist追加不覆盖文本文件

java - 在 Arraylist 中搜索时遇到问题

java - 如何使用混合数据类型在泛型中初始化数组

java - 如何进行这种类型的算法 - 根据预算获取产品列表

javascript - javascript array 和 jquery set 的区别

java - DataNucleus 中的多对一单向关系

javascript - 在多次出现的项目中,仅删除第二个

arrays - 如果输入数组定义为 const,如何对其进行排序?

java - 如何使用javaFX Canvas绘制图像图案

java - 从 EditText 将输入的项目添加到列表(使用 SimpleAdapter)