• 吴裕雄--天生自然java开发常用类库学习笔记:大数操作


    import java.math.* ;
    class MyMath{
        public static double add(double d1,double d2){        // 进行加法计算
            BigDecimal b1 = new BigDecimal(d1) ;
            BigDecimal b2 = new BigDecimal(d2) ;
            return b1.add(b2).doubleValue() ;
        }
        public static double sub(double d1,double d2){        // 进行减法计算
            BigDecimal b1 = new BigDecimal(d1) ;
            BigDecimal b2 = new BigDecimal(d2) ;
            return b1.subtract(b2).doubleValue() ;
        }
        public static double mul(double d1,double d2){        // 进行乘法计算
            BigDecimal b1 = new BigDecimal(d1) ;
            BigDecimal b2 = new BigDecimal(d2) ;
            return b1.multiply(b2).doubleValue() ;
        }
        public static double div(double d1,double d2,int len){        // 进行乘法计算
            BigDecimal b1 = new BigDecimal(d1) ;
            BigDecimal b2 = new BigDecimal(d2) ;
            return b1.divide(b2,len,BigDecimal.ROUND_HALF_UP).doubleValue() ;
        }
        public static double round(double d,int len){    // 进行四舍五入
            BigDecimal b1 = new BigDecimal(d) ;
            BigDecimal b2 = new BigDecimal(1) ;
            return b1.divide(b2,len,BigDecimal.ROUND_HALF_UP).doubleValue() ;
        }
    };
    
    public class BigDecimalDemo01{
        public static void main(String args[]){
            System.out.println("加法运算:" + MyMath.round(MyMath.add(10.345,3.333),1)) ;
            System.out.println("减法运算:" + MyMath.round(MyMath.sub(10.345,3.333),3)) ;
            System.out.println("乘法运算:" + MyMath.round(MyMath.mul(10.345,3.333),2)) ;
            System.out.println("除法运算:" + MyMath.div(10.345,3.333,3)) ;
        }
    };
    import java.math.BigInteger ;
    public class BigIntegerDemo01{
        public static void main(String args[]){
            BigInteger bi1 = new BigInteger("123456789") ;    // 声明BigInteger对象
            BigInteger bi2 = new BigInteger("987654321") ;    // 声明BigInteger对象
            System.out.println("加法操作:" + bi2.add(bi1)) ;    // 加法操作
            System.out.println("减法操作:" + bi2.subtract(bi1)) ;    // 减法操作
            System.out.println("乘法操作:" + bi2.multiply(bi1)) ;    // 乘法操作
            System.out.println("除法操作:" + bi2.divide(bi1)) ;    // 除法操作
            System.out.println("最大数:" + bi2.max(bi1)) ;     // 求出最大数
            System.out.println("最小数:" + bi2.min(bi1)) ;     // 求出最小数
            BigInteger result[] = bi2.divideAndRemainder(bi1) ;    // 求出余数的除法操作
            System.out.println("商是:" + result[0] + 
                ";余数是:" + result[1]) ;
        }
    };
  • 相关阅读:
    队列的链式存储结构实现
    堆栈的链式存储实现
    使用C#改变windows系统本地时间
    oracle 多数值录入校验(分隔符“/”)
    oracle中in和exists的区别
    redis安装 windows版(图形化安装)
    Oracle 返回结果集
    饿了么4年 + 阿里2年:研发路上的一些总结与思考
    Oracle 获取各类时间
    Oracle表中已有数据,修改字段长度
  • 原文地址:https://www.cnblogs.com/tszr/p/12152931.html
Copyright © 2020-2023  润新知