Java.math.BigDecimal.toEngineeringString() 方法

描述

java.math.BigDecimal.toEngineeringString() 返回此 BigDecimal 的字符串表示形式,如果需要指数,则使用工程符号。

返回一个表示 BigDecimal 的字符串,如 toString() 方法中所述,但如果使用指数表示法,则将 10 的幂调整为 3 的倍数(工程表示法),使得非零的整数部分 值将在 1 到 999 的范围内。

如果对零值使用指数表示法,则使用小数点和一个或两个小数零位,以便保留零值的小数位数。

与 toString() 的输出不同,如果输出字符串使用字符串构造函数转换回 BigDecimal,则此方法的输出不能保证恢复此 BigDecimal 的相同 [integer, scale] 对。

此方法的结果满足较弱的约束,即始终通过将字符串构造函数应用于方法的输出来产生数值相等的结果。


声明

以下是 java.math.BigDecimal.toEngineeringString() 方法的声明。

public String toEngineeringString()

参数

NA


返回值

此方法返回此 BigDecimal 的字符串表示形式,如果需要指数,则使用工程符号。


异常

NA


示例

下面的例子展示了 math.BigDecimal.toEngineeringString() 方法的使用。

package com.tutorialspoint;

import java.math.*;

public class BigDecimalDemo {

   public static void main(String[] args) {

      // create a BigDecimal object
      BigDecimal bg;
   
      // create a String object
      String s;

      bg = new BigDecimal("1E+4");

      // assign the engineering string value of bg to s
      s = bg.toEngineeringString();

      String str = "Engineering string value of " + bg + " is " + s;

      // print s value
      System.out.println( str );
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

Engineering string value of 1E+4 is 10E+3