BigDecimal是Java的math包中的一个API类,用来对超过16位有效位的数进行精确的运算。Java中对bigdimical比较大小,不能直接使用大于或者小于好运算符,而是使用bigdemical的compareTo方法。可以通过BigDecimal的compareTo方法来进行比较。返回的结果是int类型,-1表示小于,0是等于,1是大于。那么,BigDecimal如何比较大小以及方法?
借用《Effactive Java》这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确。
BigDecimal是Java的math包中的一个API类,用来对超过16位有效位的数进行精确的运算。那么,BigDecimal如何比较大小以及方法?
打开eclipse工具,新建一个Web项目,并在src包中新建com.you.utils
在已新建的package包下,新建Java类BigDecimalCompare,注意勾选main主方法在主方法中,声明两个BigDecimal类型变量b1和b2,调用equals()方法比较大小保存代码并运行文件,结果打印出相等,说明这个方法可以用来比较BigDecimal类型将equals()方法换成==,然后保存运行,结果控制台什么都没有打印定义一个int类型变量a,调用compareTo()方法,将b1和b2比较大小的结果赋值给a;当a等于0,说明b1和b2相等。保存运行后,打印出相等,说明compareTo对比较BigDecimal类型也是有效的。