1. ホーム
  2. java

[解決済み] javaで科学的記数法で数字を表現するには?[重複しています]

2022-02-09 03:18:55

質問内容

惑星の質量と直径を扱うプログラムを書いているのですが、これらの量は科学的記数法で表されます。私の疑問は、どうやって大きな数字を正しく表示するかではなく(printf()を使うことです)、どうやってこれらの数字を... "type"するか、だと思います。例えば、水銀の質量はこう表現します。

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