71674705值转换为7.1674705E

我在阅读java中的大数字时遇到了很大的问题。 当我读71674705我得到7.1674705E这是不好的。

例:

double num = cell.getNumericCellValue();

我怎样才能防止数字之间的转换数字将保持像71674705。

数字本身没有改变,只有当你把它转换成一个string的表示。 像你使用的doublevariables没有明确的格式定义。

您可以使用java.text.NumberFormat ( javadoc )来设置您希望看到的数字的格式。

num只是一个双精度浮点数。 格式(指数符号)只是打印问题。 所以如果你只是在debugging,你不必担心。 对于生产输出,可以使用DecimalFormatNumberFormat

如果你确定你正在处理一个整数,你想要它作为一个整数值,你总是可以尝试做: Integer.valueOf(num)

编辑:无效的大数当然:-)