本文介绍BigDecimal的3个toString方法的区别。
toEngineeringString:有必要时使用工程计数法。工程记数法是一种工程计算中经常使用的记录数字的方法,与科学计数法类似,但要求10的幂必须是3的倍数
toPlainString:不使用任何指数(永不使用科学计数法)
toString:有必要时使用科学计数法
不使用指数 | 科学记数法 | 工程记数法 |
2700 | 2.7 × 10³ | 2.7 × 10³ |
27000 | 2.7 × 10⁴ | 27 × 10³ |
270000 | 2.7 × 10⁵ | 270 × 10³ |
2700000 | 2.7 × 10⁶ | 2.7 × 10⁶ |
看看如下程序示例
import java.math.BigDecimal;
public class Test {
public static void main(String[] args) {
BigDecimal number = new BigDecimal("1E11");
System.out.println(number.toEngineeringString());
System.out.println(number.toPlainString());
System.out.println(number.toString());
}
}
输出
100E+9
100000000000
1E+11