我正在尝试打印一个小的 double 数字,如6.67e-11
,但使用Double.toString()会返回0
。我该怎么做才能让它打印6.67e-11(或类似的东西)呢?
答案 0 :(得分:2)
无法重现:
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。