在显示时候调用的是Double类的toString()方法。原因如下:
而Double的toString()方法实际是调用了FloatingDecimal类的toJavaFormatString()方法,如下图
研究源码发现:科学计数法展示是因为FloatingDecimal类的decExponent属性
那么decExponent属性究竟是什么呢?简单来说,
就是小数点向左移动decExponent就是正数,向右移动就是负数。移动几位就是几。
而具体移动规则是移动到小数点左边为0,右边为非0时候停止。