Использование стандартного класса Java Double
для разбора числа с плавающей запятой с мантиссой, кажется, пропускает знак + из показателя экспоненты.Анализ числа с плавающей запятой с мантиссой в Java
Например:
Double.parseDouble("1258124354E-28") returns 1.258124354E-19, but
Double.parseDouble("1243544322E+24") returns 1.243544322E33 (not E+33)
Есть ли способ, чтобы получить знак + с помощью распашные, без строки постобработки?
Класс BigDecimal
делает лучшую работу, например.
new BigDecimal("1243544322E+24").toString() does return 1.243544322E+33
, но это, как правило, медленнее, чем Double
, который показывает, в отделении интенсивной обработки.
Не печатайте его с помощью toString, используйте экземпляр NumberFormat. –