【发布时间】:2010-12-12 12:58:44
【问题描述】:
我正在尝试打印一个小的 double 数字,例如 6.67e-11,但使用 Double.toString() 会返回 0。我该怎么做才能让它打印 6.67e-11(或类似的东西)?
【问题讨论】:
标签: java double scientific-notation
我正在尝试打印一个小的 double 数字,例如 6.67e-11,但使用 Double.toString() 会返回 0。我该怎么做才能让它打印 6.67e-11(或类似的东西)?
【问题讨论】:
标签: java double scientific-notation
无法重现:
public class Test {
public static void main(String args[])
{
double d = 6.67e-11;
System.out.println(Double.toString(d)); // Prints "6.67E-11"
}
}
IIRC,Double.toString() 始终返回一个字符串,该字符串允许使用 Double.parseDouble() 来回传递确切的值。
我的猜测是,由于其他操作中的一些舍入错误,您实际上没有一个小的值 - 您有 0。
【讨论】: