大数据阶乘运算-java高精度运算

时间:2023-01-08 18:06:58

在java中提供了两个拥有高精度计算了类:BigInteger和BigDecimal

BigInteger:支持任意精度的整数运算

BigDecimal:支持任意精度的定点数,可以进行精确的货币计算

具体请参考JDK文档


import java.math.BigDecimal;
/**
 * 高精度运算
 * @author RSun
 * @Date 2012-11-7下午11:22:04
 */
public class TestBigInteger {
private static final long SUM = 10;
public static void main(String[] args) {
System.out.println("大数据阶乘运算开始...可以new线程运算");
String s = "1";
for (int i = 1; i <= SUM; i++) {

              // new BigDecimal("乘数").multiply(new BigDecimal(“因子")).toString();

BigDecimal    stra = new BigDecimal(s);
BigDecimal end = new BigDecimal(s); //将s转为BigDecimal
BigDecimal re = end.multiply(stra); //end*stra
s = re.toString(); //重新赋值给s
}
System.out.println("运行完毕!结果:"+s);
}
}

输出结果:
大数据阶乘运算开始...
运行完毕!结果:3628800