• Java学习笔记BigDecimal类型


    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表示大于 

  • 相关阅读:
    基础命令
    RHEL7装机
    模拟项目
    配置NAT,PAT
    配置标准ACL,扩展ACL,命名ACL
    HSRP,STP配置
    三层交换配置及RIP动态路由
    vlan,trunk,DHCP,以太网通道
    ERRORS: MRBC.UserInfo.groups: (fields.E304) Reverse accessor for 'UserInfo.groups' clashes with reverse accessor for 'User.groups'. HINT: Add or change a related_name argument to the definition for '
    权限rbac(基于角色的访问控制)
  • 原文地址:https://www.cnblogs.com/chao0219/p/16379134.html
Copyright © 2020-2023  润新知