我正在尝试将一个字符串数组转换为Java中的一个浮点数组,是否有更优雅的方法来执行此操作,而不是使用循环遍历字符串数组的每个元素并使用类似的方式将其转换为浮点数JsonTypeInfo.Id.NAME
?
答案 0 :(得分:2)
我不知道这是否真的更好,但是使用Java 8你可以通过以下方式转换数组:
String[] strings = new String[] {"1", "2", "3", "4"};
Float[] floats = Arrays.stream(strings).map(Float::valueOf).toArray(Float[]::new);
如果您想使用double
,则可以使用原始类型(不幸的是,这些版本不提供mapToFloat
或FLoatStream
类,请参阅此处{{3} }):
double[] doubles = Arrays.stream(strings).mapToDouble(Double::parseDouble).toArray();
<强>注:强>
请注意使用parseDouble
与valueOf
的区别:
parseDouble
返回基元类型,而valuOf
将返回盒装类型。