我正在编写一个处理行星质量和直径的程序;这些量以科学计数法表示。我的问题不是,请注意,不是如何以正确的方式打印大数字(那是使用 printf(),duh),我会如何...“输入”这些数字,我猜你可以说。例如,汞的质量表示为:
3.30 x 10ˆ23
在我的行星质量数组中,一个元素看起来是:
33.0 * Math.pow(10, 23)
但是,我不认为这是正确的方法 - 看起来它会引发异常......那么从程序员的角度来看,我怎么能表达这样的大数字呢?谢谢!
我正在编写一个处理行星质量和直径的程序;这些量以科学计数法表示。我的问题不是,请注意,不是如何以正确的方式打印大数字(那是使用 printf(),duh),我会如何...“输入”这些数字,我猜你可以说。例如,汞的质量表示为:
3.30 x 10ˆ23
在我的行星质量数组中,一个元素看起来是:
33.0 * Math.pow(10, 23)
但是,我不认为这是正确的方法 - 看起来它会引发异常......那么从程序员的角度来看,我怎么能表达这样的大数字呢?谢谢!
JLS 的第 3.10.2 节讨论了 Java 中的浮点文字。简而言之,提供小数部分就好像它是科学记数法一样,而不是x 10^23
你会写e23
:
3.30e23
要写一个负指数,你也可以很容易地做到这一点6.67 x 10^(-11)
:
6.67e−11
Java 确实支持科学记数法:
3.30e23