java中BigDecimal的数学运算

1、BigDecimal在做加、减、乘时,精度不会丢失,但是做除法时,存在无法除尽的情况,这时就必须指定精度以及如何进行截断。

importjava.math.BigDecimal;
importjava.math.RoundingMode;

publicclassDemo{
publicstaticvoidmain(String[]args){
BigDecimald1=newBigDecimal("123.456");
BigDecimald2=newBigDecimal("23.456789");
BigDecimald3=d1.divide(d2,10,RoundingMode.HALF_UP);//保留10位小数并四舍五入
BigDecimald4=d1.divide(d2);//报错:ArithmeticException,因为除不尽
}
}

2、可以对BigDecimal做除法的同时求其余数。

importjava.math.BigDecimal;
publicclassDemo{
publicstaticvoidmain(String[]args){
BigDecimaln=newBigDecimal("22.444");
BigDecimalm=newBigDecimal("0.23");
BigDecimal[]dr=n.divideAndRemainder(m);
System.out.println(dr[0]);//97.0
System.out.println(dr[1]);//0.134
}
}

以上就是java中BigDecimal的数学运算使用,希望对大家有所帮助。更多Java学习指路:Java基础

原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容