心安
代码的世界,简单而又直接
posts - 20,comments - 0,views - 6673

1.介绍

   Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象

2.计算

复制代码
 1 BigDecimal add(BigDecimal val)  //加法
 2 
 3 BigDecimal subtract(BigDecimal val)  //减法
 4 
 5 BigDecimal multiply(BigDecimal val)  //乘法
 6 
 7 BigDecimal divide(BigDecimal divisor, int scale, int roundingMode) //除法,第一个参数是除数,第二个参数代表保留几位小数,第三个代表的是使用的模式
 8 
 9 //除法的格式(roundingMode)枚举
10 BigDecimal.ROUND_DOWN:直接省略多余的小数,比如1.28如果保留1位小数,得到的就是1.2
11 
12 BigDecimal.ROUND_UP:直接进位,比如1.21如果保留1位小数,得到的就是1.3
13 
14 BigDecimal.ROUND_HALF_UP:四舍五入,2.35保留1位,变成2.4
15 
16 BigDecimal.ROUND_HALF_DOWN:四舍五入,2.35保留1位,变成2.3
17 
18 后边两种的区别就是如果保留的位数的后一位如果正好是5的时候,一个舍弃掉,一个进位。
复制代码

3.比较

 1 BigDecimal compareTo(BigDecimal val) 2 返回结果: -1表示小于;0表示等于;1表示大于 

posted on   逐梦の心安  阅读(75)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示