package demo; import java.math.BigDecimal; public class EX { public static void main(String[] args) { BigDecimal sum=new BigDecimal(0.0); BigDecimal factorial=new BigDecimal(1.0); int i=1; while(i<=20) { sum=sum.add(factorial); ++i; factorial=factorial.multiply(new BigDecimal(1.0/i)); } System.out.println("1+1/2!+1/3!.....="+sum); } } /*BigDecimal一共有4个构造方法 BigDecimal(int) 创建一个具有参数所指定整数值的对象。 BigDecimal(double) 创建一个具有参数所指定双精度值的对象。 BigDecimal(long) 创建一个具有参数所指定长整数值的对象。 BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。 BigDecimal 的运算方式 不支持 + - * / 这类的运算 它有自己的运算方法 BigDecimal add(BigDecimal augend) 加法运算 BigDecimal subtract(BigDecimal subtrahend) 减法运算 BigDecimal multiply(BigDecimal multiplicand) 乘法运算 BigDecimal divide(BigDecimal divisor) 除法运算*/