zoukankan      html  css  js  c++  java
  • BigDecimal加减乘除

    第一种:BigDecimal(double val)

    第二种:BigDecimal(String val)  //通常采用这种方式

    来看看BigDecimal的四则运算:

    BigDecimal的四则运算
    加法 bigDecimal1.add(bigDecimal2)
    减法 bigDecimal1.subtract(bigDecimal2)
    乘法 bigDecimal1.multiply(bigDecimal2)
    除法 bigDecimal1.divide(bigDecimal2)

    BigDecimal 对小数的处理:

    DecimalFormat   df   =new  DecimalFormat("#.00"); 
    
    例:new java.text.DecimalFormat("#.00").format(3.1415926)
    
    #.00 表示两位小数 #.0000四位小数 以此类推...

    通过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则向下舍
     
     
    BigDecimal.ROUND_UP = 0;
    
    BigDecimal.ROUND_DOWN = 1;
    
    BigDecimal.ROUND_CEILING =  2;
    
    BigDecimal.ROUND_FLOOR= 3;
    
    BigDecimal.ROUND_HALF_UP= 4;
    
    BigDecimal.ROUND_HALF_DOWN= 5;
    
    BigDecimal.ROUND_HALF_EVEN= 6;
    
    BigDecimal.ROUND_UNNECESSARY= 7
  • 相关阅读:
    2019年8月16日_实验室学术论文研讨
    2019年8月2日实验室学术研讨会议
    2019年7月26日实验室学术研讨会议
    2019年7月12日实验室开展学术研讨
    hdu 5547
    hdu 1286
    hdu 1272
    hdu 1213
    poj 2533 LIS(最长上升序列)
    HUD 5773 LIS(最长上升序列)
  • 原文地址:https://www.cnblogs.com/cat520/p/10418745.html
Copyright © 2011-2022 走看看