我该怎么做?
我有一个 arraylist,带有 float 元素。 (Arraylist <Float>)
(float[]) Floats_arraylist.toArray()
它不工作。
不能从 Object[] 转换为 float[]
原文由 lacas 发布,翻译遵循 CC BY-SA 4.0 许可协议
我该怎么做?
我有一个 arraylist,带有 float 元素。 (Arraylist <Float>)
(float[]) Floats_arraylist.toArray()
它不工作。
不能从 Object[] 转换为 float[]
原文由 lacas 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用 Apache Commons ArrayUtils.toPrimitive()
:
List<Float> list = new ArrayList<Float>();
float[] floatArray = ArrayUtils.toPrimitive(list.toArray(new Float[0]), 0.0F);
原文由 dogbane 发布,翻译遵循 CC BY-SA 2.5 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
1 回答366 阅读
2 回答427 阅读✓ 已解决
2 回答667 阅读✓ 已解决
2 回答460 阅读✓ 已解决
2 回答914 阅读✓ 已解决
自己循环。
The nullcheck is mandatory to avoid
NullPointerException
because aFloat
(an object) can benull
while afloat
(a primitive) cannot benull
完全没有。如果您已经在使用 Java 8,并且以
double[]
而不是float[]
结束没有问题,请考虑Stream#mapToDouble()
方法(例如没有mapToFloat()
)。