这个问题在这里已经有一个答案:>
Format double value in scientific notation5个
我正在编写一个处理行星质量和直径的程序;这些数量用科学符号表示.我的问题不是,记住你,不是如何打印大量正确的方式(这是使用printf(),呃),它怎么会…“键入”这些数字,我想你可以说.例如,表示汞的质量:
我正在编写一个处理行星质量和直径的程序;这些数量用科学符号表示.我的问题不是,记住你,不是如何打印大量正确的方式(这是使用printf(),呃),它怎么会…“键入”这些数字,我想你可以说.例如,表示汞的质量:
3.30 x 10ˆ23
在我的行星群体中,一个元素会是:
33.0 * Math.pow(10,23)
但是,我不太认为这是正确的方法 – 它看起来会抛出一个异常…那么我怎么能从程序员的角度来表达大量的数字?谢谢!
解决方法
Section 3.10.2 of the JLS谈Java中的浮点文字.简而言之,提供小数部分,就像它是科学的符号,而不是x 10 ^ 23你会写e23:
3.30e23
要写一个负指数,你可以轻松地做到6.67 x 10 ^( – 11):
6.67e−11