zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然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]) ;
        }
    };
  • 相关阅读:
    使用VS2013直接升级到VS2019,Cmake编译CCC4.0版本错误记录
    最近使用LuaSqlite3时,不得不说的——事务提交ATTACH语句的巨坑
    LuaSocket学习之tcp服务端
    LuaSocket HTTP 初识记录
    LuaRocks安装教程
    Lua5.1-----函数可变参数详解
    DataTable与json互转,字段类型信息丢失问题初探
    json数组与对象数组
    asp.net中封装路由信息的对象--RouteData源码
    人类的心理行为模式(几个心理学实验)
  • 原文地址:https://www.cnblogs.com/tszr/p/12152931.html
Copyright © 2011-2022 走看看