【说站】java中BigDecimal的数学运算
2025-01-03
10
java中BigDecimal的数学运算
1、BigDecimal在做加、减、乘时,精度不会丢失,但是做除法时,存在无法除尽的情况,这时就必须指定精度以及如何进行截断。
import java.math.BigDecimal; import java.math.RoundingMode; public class Demo { public static void main(String[] args) { BigDecimal d1 = new BigDecimal("123.456"); BigDecimal d2 = new BigDecimal("23.456789"); BigDecimal d3 = d1.divide(d2, 10, RoundingMode.HALF_UP); // 保留10位小数并四舍五入 BigDecimal d4 = d1.divide(d2); // 报错:ArithmeticException,因为除不尽 } }
2、可以对BigDecimal做除法的同时求其余数。
import java.math.BigDecimal; public class Demo { public static void main(String[] args) { BigDecimal n = new BigDecimal("22.444"); BigDecimal m = new BigDecimal("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基础
本教程操作环境:windows7系统、java10版,DELL G3电脑。
更新于:2天前赞一波!
相关文章
- 【说站】java中BigDecimal有哪些用法
- 【说站】BigDecimal值在java比较的两种方法
- 【说站】java SimpleDateFormat如何转换局部变量
- 【说站】java反射调用指定的属性
- 【说站】java数组引用如何实现
- 【说站】java中Stream的使用流程及注意
- 【说站】java获取class实例的方式
- 【说站】java中Stream的四种创建
- 【说站】java中反射提供哪些功能
- 【说站】java中Lamdba表达式的用法整理
- 【说站】java如何自定义函数式接口
- 【说站】java方法引用是什么
- 【说站】java懒惰评估如何实现
- 【说站】java中final域的内存语义理解
- 【说站】java循环和递归的区别
- 【说站】java枚举如何实现单例
- 【说站】java中enumerate()的复制
- 【说站】java线程锁死是什么
- 【说站】java调用shell脚本的方法
- 【说站】java多线程的作用
文章评论
评论问答