BigDecimal的加减乘除即保留小数

加减乘除 

     BigDecimal bignum1 = new BigDecimal("10");  
     BigDecimal bignum2 = new BigDecimal("5");  
     BigDecimal bignum3 = null;  
       
     //加法  
     bignum3 =  bignum1.add(bignum2);       
     System.out.println("和 是:" + bignum3);  
       
     //减法  
     bignum3 = bignum1.subtract(bignum2);  
     System.out.println("差  是:" + bignum3);  
       
     //乘法  
     bignum3 = bignum1.multiply(bignum2);  
     System.out.println("积  是:" + bignum3);  
       
     //除法  
     bignum3 = bignum1.divide(bignum2);  
     System.out.println("商  是:" + bignum3);

小数保留

通过setScale()方法

double   f   =   111231.5585; 

BigDecimal   b   =   new   BigDecimal(f); 

double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue(); //保留2位小数

BigDecimal.setScale()方法用于格式化小数点

setScale(1)表示保留一位小数,默认用四舍五入方式 

setScale(1,BigDecimal.ROUND_DOWN)直接删除多余的小数位,如2.35会变成2.3 

setScale(1,BigDecimal.ROUND_UP)进位处理,2.35变成2.4 

setScale(1,BigDecimal.ROUND_HALF_UP)四舍五入,2.35变成2.4

setScaler(1,BigDecimal.ROUND_HALF_DOWN)四舍五入,2.35变成2.3,如果是5则向下舍

猜你喜欢

转载自blog.csdn.net/kxj19980524/article/details/84393998