import java.math.BigInteger; public class BigIntegerDemo { public static void main(String[] args) { BigInteger s=BigInteger.valueOf(1); //返回其值等于指定 long 的值的 BigInteger int n=50; //求50的阶乘 for(int i=1;i<=n;i++){ s=s.multiply(BigInteger.valueOf(i)); //返回其值为(BigInteger.valueOf(i)) 的 BigInteger } System.out.println(s); } }
import java.math.BigDecimal; public class BigDecimalDemo { public static void main(String[] args) { //如果工程中碰到可能会丢失精度的运算,最好采用BigDecimal来进行 //下面先演示不使用BigDecimal的高精度运算 double sum=0; for(int i=0;i<10;i++){ sum+=0.1; } System.out.println("sum="+sum); //下面演示使用BigDecimal来进行高精度运算 BigDecimal d=new BigDecimal(0); for(int i=0;i<10;i++){ d=d.add(new BigDecimal(0.1)); } System.out.println("d="+d.doubleValue()); double dd=13.5654654645D; BigDecimal b=new BigDecimal(dd); b=b.divide(new BigDecimal(1.2),2,BigDecimal.ROUND_DOWN); //返回一个 BigDecimal,其值为 (this / divisor),其标度为指定标度 System.out.println("b+"+b.doubleValue()); } }
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/xionghui2013/article/details/47668117