如何在Java中以科学记数法显示数字?

要以科学记数法显示数字,首先创建 NumberFormat 对象 -

NumberFormat numFormat = newDecimalFormat();

现在,假设您需要格式化 Integer 的最小值 -

int i = Integer.MIN_VALUE;
System.out.println(i);
numFormat = newDecimalFormat("0.######E0");
System.out.println(numFormat.format(i));
numFormat = newDecimalFormat("0.#####E0");
System.out.println(numFormat.format(i));

上面,我们使用format()了 NumberFormat 类的方法。

示例

import java.text.DecimalFormat;
import java.text.NumberFormat;
public class Demo {
   public static void main(String args[]) {
      NumberFormat numFormat = new DecimalFormat();
      int i = Integer.MIN_VALUE;
      System.out.println(i);
      numFormat = new DecimalFormat("0.######E0");
      System.out.println(numFormat.format(i));
      numFormat = new DecimalFormat("0.#####E0");
      System.out.println(numFormat.format(i));
      double val = 0.37872;
      numFormat = new DecimalFormat("0.#####E0");
      System.out.println(numFormat.format(val));
      numFormat = new DecimalFormat("000000E0");
      System.out.println(numFormat.format(val));
   }
}
输出结果
-2147483648
-2.147484E9
-2.14748E9
3.7872E-1
378720E-6