zoukankan      html  css  js  c++  java
  • BigDecimal、double

    BigDecimal篇:

    1.String转BigDecimal

    String s1="123.45";
    
    BigDecimal bg=new BigDecimal(s1);

    2. 解决double相加的精度问题,要用BigDecimal

    public static double add(double v1, double v2)
        {
            BigDecimal b1 = new BigDecimal(Double.toString(v1));
            BigDecimal b2 = new BigDecimal(Double.toString(v2));
            return b1.add(b2).doubleValue();
        }
    

      

    Double a=BigDecimalUtils.format(b).doubleValue();
    

       

    3.加减乘除
    bignum3 =  bignum1.add(bignum2);      
    bignum3 = bignum1.subtract(bignum2);
    bignum3 = bignum1.multiply(bignum2); 
    bignum3 = bignum1.divide(bignum2); 
    

      

    4.比大小

    //前提为a、b均不能为null
    if(a.compareTo(b) == -1){
        System.out.println("a小于b");
    }
     
    if(a.compareTo(b) == 0){
        System.out.println("a等于b");
    }
     
    if(a.compareTo(b) == 1){
        System.out.println("a大于b");
    }
     
    if(a.compareTo(b) > -1){
        System.out.println("a大于等于b");
    }
     
    if(a.compareTo(b) < 1){
        System.out.println("a小于等于b");
    }
    

     

    5.等于0

    if(num.equals(BigDecimal.ZERO)){ }
    

     

    6.转换成类型

    toString()                将BigDecimal对象的数值转换成字符串。 
    doubleValue()          将BigDecimal对象中的值以双精度数返回。 
    floatValue()             将BigDecimal对象中的值以单精度数返回。 
    longValue()             将BigDecimal对象中的值以长整数返回。 
    intValue()               将BigDecimal对象中的值以整数返回。

    6.保留两位小数处理

    //第一种方法:保留两位小数
    double db = bigDecimalTwo.setScale(2, RoundingMode.HALF_UP).doubleValue();
    System.out.println(db);
     
    // 第二种方法:保留两位小数
    DecimalFormat df = new DecimalFormat("#.00");
    df.format(bigDecimalTwo);
    

      

     

    ----------------------------------------分割线---------------------------------------------------------------------------

    double篇:

     double的比大小,判是否等于0都会有精度问题

    要用BigDecimal来处理

    
    
  • 相关阅读:
    《学习之道》第六章习惯的部分-信号
    《学习之道》第六章习惯的组成
    《学习之道》第六章习惯的形成
    《学习之道》第五章小恶魔造成拖延(二)
    《学习之道》第五章拖延的两个小案例
    《学习之道》第五章是借口造成拖延(一)
    《学习之道》第五章认识拖延
    《学习之道》第五章认识“小恶魔”
    《学习之道》第五章分心与拖延
    redis 安装
  • 原文地址:https://www.cnblogs.com/python924/p/13576771.html
Copyright © 2011-2022 走看看