Java:这个double的格式是什么,我该如何转换它?

时间:2014-03-08 06:47:42

标签: java math double type-conversion

我正在阅读遗留的网络服务,该网络服务以我不熟悉的格式返回双打。

一些例子是 1.58e-6
1.56e-6
1.45e-6

他们应该代表这样的双打(例如) 0.000004343

有谁知道它是什么以及如何转换?

非常感谢。

4 个答案:

答案 0 :(得分:1)

你可以像这样转换 1.58e-6 = 1.58 * 10 ^ -6 = 0.00000158

答案 1 :(得分:1)

好的,实际上很简单。

double dbl = 1.45e-6;
DecimalFormat df = new DecimalFormat("#.########");
System.out.println(df.format(dbl));  

输出:0.00000145

答案 2 :(得分:1)

它被称为科学记数法。 Double.parseDouble()可以处理它。注意,它们不是双打的,它们是用科学记数法表达的实数。 Double是您想要的目标格式,而不是此格式。

答案 3 :(得分:0)

试试这个

String s = new DecimalFormat("0.##############").format(Double.parseDouble("1.58e-6"));