Метод BigDecimal toString () в Java с примерами
Метод java.math.BigDecimal.toString () используется для представления текущего BigDecimal, с помощью которого этот метод вызывается в строковой форме, используя научную нотацию, если требуется показатель степени. Это делается следующими шагами:
- Стандартная каноническая строковая форма BigDecimal создается путем преобразования абсолютного значения немасштабированного значения BigDecimal в десятичную систему с использованием символов от «0» до «9» без начальных нулей, кроме случаев, когда значение равно 0, а затем одиночного символа «0». ' используется.
- Затем вычисляется скорректированная экспонента, которая на единицу меньше, чем добавление количества символов в преобразованном немасштабированном значении и отрицательном значении шкалы. То есть -scale + (ulength-1), где ulength - длина абсолютного значения немасштабированного значения в десятичных разрядах (его точность).
- Затем к преобразованному немасштабированному значению добавляется суффикс экспоненты в символьной форме (возможно, со вставленной десятичной точкой). Он состоит из буквы «E», за которой сразу следует скорректированная экспонента, преобразованная в символьную форму.
- Наконец, перед всей строкой ставится знак минуса '-', если немасштабированное значение меньше нуля. Знаковый символ не добавляется, если немасштабированное значение равно нулю или положительно.
Синтаксис:
общедоступная строка toString ()
Параметр: этот метод не принимает никаких параметров.
Возвращаемое значение: этот метод возвращает строковое представление этого числа BigDecimal.
Переопределения: этот метод переопределяет метод java.lang.Object.toString () класса Object.
Ниже программы иллюстрируют использование метода toString () в java.
Example 1: Example to convert BigDecimal into String without Scientific notation
// Java program to demonstrate // toString() method of BigDecimal import java.math.*; class GFG { public static void main(String[] args) { // Creating a BigDecimal object BigDecimal b; // Object of String to hold the number String input = "012345678901234567" + "8901234567890123" + "4567890123456789" + "0123456789012345" + "6789012345678901" + "2345678901234567" + "8901234567890123" + "4567890123456789" + "0123456789012345" + "6789012345678901" + "2345678901234567" + "8901234567890123" + "4567890123456789" + "0123456789012345" + "6789012345678901" + "2345678901234567" + "8901234567890123" + "4554324324362432" + "7674637264783264" + "7832678463726478" + "3264736274673864" + "7364732463546354" + "6354632564532645" + "6325463546536453" + "6546325463546534" + "6325465345326456" + "4635463263453264" + "654632498739473" ; // Converting to BigDecimal b = new BigDecimal(input); // Apply toString() method String s = b.toString(); // Print the result System.out.println(s); } } |
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234554324324362432767463726478326478326784637264783264736274673864736473246354635463546325645326456325463546536453654632546354653463254653453264564635463263453264654632498739473
Example 2: Example to convert BigDecimal into String with Scientific notation
// Java program to demonstrate // toString() method of BigDecimal import java.math.*; class GFG { public static void main(String[] args) { // Create a BigDecimal object BigDecimal a; // Create a String object String s; // Set precision to 5 MathContext mc = new MathContext( 5 ); a = new BigDecimal( "4536785E4" , mc); // apply toString() method s = a.toString(); // print the result System.out.println(s); } } |
4.5368E+10
Reference: https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/math/BigDecimal.html#toString()
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.