BigDecimal


1.构造器

BigDecimal(int) 创建一个具有参数所指定整数值的对象。

BigDecimal(double) 创建一个具有参数所指定双精度值的对象。 //不推荐使用

BigDecimal(long) 创建一个具有参数所指定长整数值的对象。

BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。//推荐使用

参数类型为double的构造方法的结果有一定的不可预知性,会有一定的精度丢失

当double必须用作BigDecimal的源时,请使用Double.toString(double)转成String,然后使用String构造方法

2、方法描述

add(BigDecimal) BigDecimal对象中的值相加,然后返回这个对象。

subtract(BigDecimal) BigDecimal对象中的值相减,然后返回这个对象。

multiply(BigDecimal) BigDecimal对象中的值相乘,然后返回这个对象。

divide(BigDecimal) BigDecimal对象中的值相除,然后返回这个对象。

toString() 将BigDecimal对象的数值转换成字符串。

doubleValue() 将BigDecimal对象中的值以双精度数返回。

floatValue() 将BigDecimal对象中的值以单精度数返回。

longValue() 将BigDecimal对象中的值以长整数返回。

intValue() 将BigDecimal对象中的值以整数返回。

3.四舍五入

splitAmount.multiply(resolutionFactor).setScale(2,BigDecimal.ROUND_HALF_UP);

 * @see    #ROUND_UP
 * @see    #ROUND_DOWN
 * @see    #ROUND_CEILING
 * @see    #ROUND_FLOOR
 * @see    #ROUND_HALF_UP
 * @see    #ROUND_HALF_DOWN
 * @see    #ROUND_HALF_EVEN
 * @see    #ROUND_UNNECESSARY