zoukankan      html  css  js  c++  java
  • 价格BigDecimal基本用法

    num2必须改用传入String类型

        //加法
            BigDecimal result1 = num1.add(num2);
    
     
            //减法
            BigDecimal result2 = num1.subtract(num2);
    
     
            //乘法
            BigDecimal result3 = num1.multiply(num2);
    
         //除法
            BigDecimal result5 = num2.divide(num1,20,BigDecimal.ROUND_HALF_UP);
     
            //绝对值
            BigDecimal result4 = num3.abs();
    
     
           

    小数部分操作

    1. ROUND_DOWN

    BigDecimal b = new BigDecimal("2.225667").setScale(2, BigDecimal.ROUND_DOWN);
    System.out.println(b);//2.22 直接去掉多余的位数

    2. ROUND_UP

    BigDecimal c = new BigDecimal("2.224667").setScale(2, BigDecimal.ROUND_UP);
    System.out.println(c);//2.23 跟上面相反,进位处理
     

    3. ROUND_CEILING

    天花板(向上),正数进位向上,负数舍位向上

    BigDecimal f = new BigDecimal("2.224667").setScale(2, BigDecimal.ROUND_CEILING);
    System.out.println(f);//2.23 如果是正数,相当于BigDecimal.ROUND_UP
     
    BigDecimal g = new BigDecimal("-2.225667").setScale(2, BigDecimal.ROUND_CEILING);
    System.out.println(g);//-2.22 如果是负数,相当于BigDecimal.ROUND_DOWN

    4. ROUND_FLOOR

    地板(向下),正数舍位向下,负数进位向下

    BigDecimal h = new BigDecimal("2.225667").setScale(2, BigDecimal.ROUND_FLOOR);
    System.out.println(h);//2.22 如果是正数,相当于BigDecimal.ROUND_DOWN
     
    BigDecimal i = new BigDecimal("-2.224667").setScale(2, BigDecimal.ROUND_FLOOR);
    System.out.println(i);//-2.23 如果是负数,相当于BigDecimal.ROUND_HALF_UP

    5. ROUND_HALF_UP

    BigDecimal d = new BigDecimal("2.225").setScale(2, BigDecimal.ROUND_HALF_UP);
    System.out.println("ROUND_HALF_UP"+d); //2.23 四舍五入(若舍弃部分>=.5,就进位)

    6. ROUND_HALF_DOWN

    BigDecimal e = new BigDecimal("2.225").setScale(2, BigDecimal.ROUND_HALF_DOWN);
    System.out.println("ROUND_HALF_DOWN"+e);//2.22 四舍五入(若舍弃部分>.5,就进位)
    -----------------------有任何问题可以在评论区评论,也可以私信我,我看到的话会进行回复,欢迎大家指教------------------------ (蓝奏云官网有些地址失效了,需要把请求地址lanzous改成lanzoux才可以)
  • 相关阅读:
    Python定时任务利器—Apscheduler
    Python命令行模块(sys.argv,argparse,click)
    Rust安装和环境配置
    DBF 文件 ORACLE 数据库恢复
    认识 Cargo-Rust构建工具和包管理器
    VS Code 搭建 Rust 开发环境
    如何按名称或PID查找一个进程?如何按端口号查找一个进程?如何查看一个进程的CPU和内存、文件句柄使用情况?如何查看CPU利用率高的TOP10进程清单?如何根据PID强制终止进程?
    String 字符串
    JVM初探之类文件结构
    隐藏Windows不常用设置项
  • 原文地址:https://www.cnblogs.com/pxblog/p/14614289.html
Copyright © 2011-2022 走看看