我该怎么做?
我有一个 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 许可协议
8 回答6.5k 阅读
2 回答3.4k 阅读
4 回答613 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
1 回答944 阅读✓ 已解决
2 回答2k 阅读
1 回答407 阅读
2 回答479 阅读✓ 已解决
2 回答725 阅读✓ 已解决
2 回答518 阅读✓ 已解决
2 回答977 阅读✓ 已解决
自己循环。
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()
)。