心安
代码的世界,简单而又直接

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 2022-06-15 17:08  逐梦の心安  阅读(59)  评论(0编辑  收藏  举报