El método java.math.BigDecimal .toEngineeringString() se usa para representar el BigDecimal actual mediante el cual se llama a este método en forma de string usando notación de ingeniería si se necesita un exponente. La representación de string de BigDecimal es la misma que se describe en el método toString() , excepto que si se usa la notación exponencial, la potencia de diez se ajusta para que sea un múltiplo de tres (notación de ingeniería), de modo que la parte entera de los valores distintos de cero estará en el rango de 1 a 999.
Sintaxis:
public String toEngineeringString()
Parámetro: Este método no acepta ningún parámetro.
Valor devuelto: este método devuelve la representación de string de ingeniería de este número BigDecimal.
Los siguientes programas ilustran el uso del método toEngineeringString() en java
Ejemplo 1: Ejemplo para convertir BigDecimal en Engineering String sin notación exponencial
// Java program to demonstrate // toEngineeringString() 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" + "4635463263453264" + "654632498739473"; // Converting to BigDecimal b = new BigDecimal(input); // Apply toEngineeringString() method String s = b.toEngineeringString(); // Print the result System.out.println(s); } }
1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234554324324362432767463726478326478326784637264784635463263453264654632498739473
Ejemplo 2: Ejemplo para convertir BigDecimal en Engineering String con notación exponencial
// Java program to demonstrate // toEngineeringString() method of BigDecimal import java.math.*; class GFG { public static void main(String[] args) { // Create a BigDecimal object BigDecimal a = new BigDecimal("4536785E10"); // Create a String object String s; // apply toEngineeringString() method s = a.toEngineeringString(); // print the result System.out.println(s); } }
45.36785E+15
Referencias: https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/math/BigDecimal.html#toEngineeringString()