android 金钱计算BigDecimal+Scale+加减乘除

C#代码中我公司工作遇到的就是计算Decimal,如下图:
android 金钱计算BigDecimal+Scale+加减乘除
android怎么写代码实现计算BigDecimal
先理解一下
1.add:加法
2.subtract:减法
3.multiply:乘法
4.divide:除法

加法计算

        BigDecimal num = new BigDecimal("1.111111111111111111111111111111");
        BigDecimal num1 =new BigDecimal("2.222222222222222222222222222222");
        System.out.println("add ========= "+num.add(num1));

android 金钱计算BigDecimal+Scale+加减乘除
减法计算

        BigDecimal num = new BigDecimal("1.111111111111111111111111111111");
        BigDecimal num1 =new BigDecimal("2.222222222222222222222222222222");
        System.out.println("subtract ========= "+num1.subtract(num));

android 金钱计算BigDecimal+Scale+加减乘除
乘法计算

        BigDecimal num = new BigDecimal("1.11111111111111111111");
        BigDecimal num1 =new BigDecimal("2.22222222222222222222");
        System.out.println("multiply ========= "+num1.multiply(num));

android 金钱计算BigDecimal+Scale+加减乘除
除法计算

        BigDecimal num = new BigDecimal("1");
        BigDecimal num1 =new BigDecimal("2.222222222222222222222222222222");
        System.out.println("divide ========= "+num1.divide(num));

android 金钱计算BigDecimal+Scale+加减乘除
理解好了可以怎么写代码BigDecimal计算,代码如下:

        BigDecimal buildprocessfund = new BigDecimal(BuildProcessFund);
        BigDecimal buildInvest = new BigDecimal(BuildInvest);
        //ROUND_HALF_UP: 遇到.5的情况时往上近似,例: 1.5 ->;2
        //ROUND_HALF_DOWN : 遇到.5的情况时往下近似,例: 1.5 ->;1
        //50是scale的,scale表示小数点的位数
        BigDecimal bd = buildprocessfund.divide(buildInvest,50,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
        //scale指的是你小数点后的位数。
        //setScale(2,BigDecimal.ROUND_HALF_UP)四舍五入,2.358变成2.36
        bd = bd.setScale(2,BigDecimal.ROUND_HALF_UP);
上一篇:c – 使用ELF文件


下一篇:窗体控件缩放-C#学习随笔