Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.
BigDecimal big =new BigDecimal() ;BigDecimal small=new BigDecimal() ; // 构造时可传参数,参数类型:int,double,long,String
加法运算 : big.add(small) ;
减法运算 : big.subtract(small) ;
乘法运算 : big.multiply(small) ;
除法运算 : big.divide(small,scale,BigDecimal.ROUND_HALF_UP) ; // scale : 用于指定除法保留的精度
ROUND_HALF_UP: 遇到.5的情况时往上近似,例: 1.5 ->;2
ROUND_HALF_DOWN : 遇到.5的情况时往下近似,例: 1.5 ->;1
ROUND_HALF_DOWN : 遇到.5的情况时往下近似,例: 1.5 ->;1
比较
out.println(big.compareTo(small)); //大于 时,返回 1
out.println(big.compareTo(small)); //等于 时,返回 0
out.println(big.compareTo(small)); //小于 时,返回 -1
//compareTo方法比较时,不同于equals方法,需要两边都不为null,否则会报空指针异常,
out.println(big.min(small)); //求两个数的最小值,返回小的数
out.println(big.max(small)); //求两个数的最大值,返回大的数