将浮点值1000000.1解析为java中的String

时间:2010-12-29 10:26:15

标签: java floating-point

在我的Web应用程序中,我有一个采用浮点输入值的版本字段。但是当它使用1000000.1(或更大)的值时,它显示的版本就像1.0E7一样。我在Float包装器类中尝试了几种方法。但结果仍然相同。

由于

5 个答案:

答案 0 :(得分:1)

您的问题不在于解析,而在于格式化您的值。值是正确的,它在java中正确表示。如果您希望将格式用户更改为提供C样式格式的String.format()或java.text.NumberFormat。

答案 1 :(得分:1)

System.out.printf("%f", Float.parseFloat("1.0E7"));输出10000000.000000

请参阅http://ideone.com/3o6dO

请注意,1.0E7是1000000.0,不是 1000000.1。

答案 2 :(得分:0)

它可能与您的输出格式有关,因为1.0E7 == 10000000

答案 3 :(得分:0)

我认为你要找的是String.format(locale, msg, args)方法。

答案 4 :(得分:-1)

使用String.valueOf(floatNumber)
建议使用double而不是float