Метод toPlainString
Метод toPlainString класса BigDecimal возвращает
строковое представление числа без использования экспоненциальной
записи. Это означает, что даже для очень больших или очень
маленьких чисел результат будет содержать все цифры полностью,
без символа E. Метод не принимает параметров и возвращает
объект типа String. Само число при этом не изменяется.
Метод особенно полезен, когда нужно получить «человекочитаемое» представление числа, например, при выводе на экран или формировании отчётов, где экспоненциальная запись нежелательна.
Синтаксис
bigDecimal.toPlainString()
Пример
Давайте создадим число с отрицательным масштабом и сравним
результаты методов toString и toPlainString:
import java.math.BigDecimal;
public class Main
{
public static void main(String[] args)
{
BigDecimal bd = new BigDecimal("12345");
BigDecimal shifted = bd.scaleByPowerOfTen(3);
System.out.println(shifted.toString());
System.out.println(shifted.toPlainString());
}
}
Результат выполнения кода:
"1.2345E+7"
"12345000"
Пример
Давайте получим обычное строковое представление числа с дробной частью:
import java.math.BigDecimal;
public class Main
{
public static void main(String[] args)
{
BigDecimal bd = new BigDecimal("123.45");
String res = bd.toPlainString();
System.out.println(res);
}
}
Результат выполнения кода:
"123.45"
Пример
Давайте создадим очень маленькое число и убедимся, что метод
toPlainString не использует экспоненциальную запись:
import java.math.BigDecimal;
public class Main
{
public static void main(String[] args)
{
BigDecimal bd = new BigDecimal("0.00000123");
System.out.println(bd.toString());
System.out.println(bd.toPlainString());
}
}
Результат выполнения кода:
"0.00000123"
"0.00000123"
Смотрите также
-
класс
BigDecimal,
который представляет неизменяемые десятичные числа -
метод
valueOf,
который создаёт BigDecimal из примитивов -
метод
scale,
который возвращает масштаб числа -
метод
stripTrailingZeros,
который удаляет конечные нули