Как выразить числа в научной нотации в java?

Я пишу программу, посвященную массе и диаметру планет; Эти величины выражены в научной нотации. Мой вопрос НЕ, разумеется, НЕ, как печатать большие числа правильным способом (что с помощью printf(), duh), его как я бы... "набирал" эти числа, я думаю, вы могли бы сказать. Например, масса ртути выражается:

3.30 x 10ˆ23

И в моем массиве масс планеты элемент будет выглядеть:

33.0 * Math.pow(10, 23)

Тем не менее, я не совсем думаю, что это правильный путь - похоже, что это вызовет исключение... Итак, как я могу выразить такие большие числа с точки зрения программиста? Спасибо!

Ответы

Ответ 1

Раздел 3.10.2 JLS рассказывает о литералах с плавающей точкой в ​​Java. Короче говоря, укажите десятичную часть, как если бы она была научной нотацией, но вместо x 10^23 вы пишете e23:

3.30e23

Чтобы записать один с отрицательным показателем, вы также можете легко сделать это для 6.67 x 10^(-11):

6.67e−11

Ответ 2

Java поддерживает нотные обозначения:

3.30e23

Ответ 3

Вы можете попробовать инициализировать длинную переменную и попробовать сделать ее как double/float. Это может работать, но я не 100%