我有以下代码其将一串数字(由空格隔开),然后创建float数组:格式化字符串删除科学记数法 - 爪哇
//Split the string and then build a float array with the values.
String[] tabOfFloatString = value.split(" ");
int length = tabOfFloatString.length;
System.out.println("Length of float string is" + length);
float[] floatsArray = new float[length];
for (int l=0; l<length; l++) {
float res = Float.parseFloat(tabOfFloatString[l]);
System.out.println("Float is " + res);
floatsArray[l]=res;
}
的问题是,一些字符串中的值用科学记数法格式化 - 例如它们读取-3.04567E-8。
我想要做的是以不包含E号码的浮点数结尾。
我一直在阅读这个线程,这表明我可以使用BigDecimal,但是我无法得到这个工作 - 这是最好的方法还是应该尝试其他的东西? How to convert a string 3.0103E-7 to 0.00000030103 in Java?
的浮不包含e数字。科学记谱法是可能代表浮游物的方法之一。如果默认格式不适用于您,请查看java.text.DecimalFormat。 – theglauber