BigDecimal 构造方式主要包括4种:

支持double、int、long等类型计算,废话少说,直接上代码

import java.math.BigDecimal;

public class BigDecimalUtil{
    //几种类型的声明
    //String
    BigDecimal bd1 = new BigDecimal("11111");
    //int
    BigDecimal bd2 = new BigDecimal(11111);
    //long
    BigDecimal bd3 = new BigDecimal(11111l);
    //double
    BigDecimal bd4 = new BigDecimal(11111.00d);
    /**
     * 加
     * @param bd1
     * @param bd2
     * @return
     */
    public BigDecimal add(BigDecimal bd1,BigDecimal bd2){
        return bd1.add(bd2);
    }
    /****
     * 减
     * @param bd1
     * @param bd2
     * @return
     */
    public BigDecimal subtract(BigDecimal bd1,BigDecimal bd2){
        return bd1.subtract(bd2);
    }
    /***
     * 乘
     * @param bd1
     * @param bd2
     * @return
     */
    public BigDecimal multiply(BigDecimal bd1,BigDecimal bd2){
        return bd1.multiply(bd2);
    }

    /***
     * 除
     * @param bd1
     * @param bd2
     * @return
     */
    public BigDecimal divide(BigDecimal bd1,BigDecimal bd2){
        return bd1.divide(bd2);
    }

    public static void main(String args[]){
        BigDecimalUtil bdu = new BigDecimalUtil();
        System.out.println(bdu.add(bdu.bd1, bdu.bd2));
        System.out.println(bdu.subtract(bdu.bd1, bdu.bd2));
        System.out.println(bdu.multiply(bdu.bd1, bdu.bd2));
        System.out.println(bdu.divide(bdu.bd1, bdu.bd2));
    }
}

关于BigDecimal 的计算的更多相关文章

  1. Java使用BigDecimal精确计算的简单公式计算器

    由于工作需要,写了一个使用BigDecimal运算的精确计算的计算器(然后发现其实比不用BigDecimal的并好不到哪里去) 只能做加减乘除 double类型的数字在千万级别的时候会转成科学计数法, ...

  2. BigDecimal精确计算及陷阱

    BigDecimal通常在涉及到精确计算的时候会用到,下面是自己多次错误使用BigDecimal的总结. 结论: BigDecimal初始化小数时,尽量用字符串形式,例如new BigDecimal( ...

  3. 运用BigDecimal精确计算

    package com.wzh.test; import java.math.BigDecimal; public class test { /** * @param args */ public s ...

  4. 货币金额的计算 - Java中的BigDecimal

    在<Effective Java>这本书中也提到这个原则,float和double只能用来做科学计算或者是工程计算,在商业计算中我们要用 java.math.BigDecimal.,而且使 ...

  5. Java精确计算小数

    Java在计算浮点数的时候,由于二进制无法精确表示0.1的值(就好比十进制无法精确表示1/3一样),所以一般会对小数格式化处理. 但是如果涉及到金钱的项目,一点点误差都不能有,必须使用精确运算的时候, ...

  6. 【Java】Float计算不准确

    大家可能都遇到过,float在计算某些值时,会有不准确的情况. 比如如下情况: > 计算不准确 package com.nicchagil.study.java.demo.No10float计算 ...

  7. java中如果需要精确的计算答案,请避免使用double类型与float类型

    double类型与float类型主要用于科学计算与工程计算而设计的,用于二进制浮点计算.对于普通计算通常是结果不准确的,所以对于普通的浮点数的加减法等,解决的方法需要用int,long,BigDeci ...

  8. Core Java 总结(数据类型,表达式问题)

    2016-10-18 整理 写一个程序判断整数的奇偶 public static boolean isOdd(int i){ return i % 2 == 1; } 百度百科定义:奇数(英文:odd ...

  9. 微信随机红包(Java)

    概述 最近受一朋友提醒,问微信红包怎么实现的,当时思考了一下,觉得好像很容易,可是当真正实现的时候,发现其中有不少问题,于是小白博主查阅资料,其中资料主要来源于知乎的一篇讨论<微信红包的随机算法 ...

随机推荐

  1. Bootstrap&lt;基础十三&gt; 按钮组

    按钮组允许多个按钮被堆叠在同一行上.当你想要把按钮对齐在一起时,这就显得非常有用.你可以通过Bootstrap 按钮(Button) 插件 添加可选的 JavaScript 单选框和复选框样式行为. ...

  2. Lesson: The &quot;Hello World!&quot; Application

    Lesson: The "Hello World!" Application The sections listed below provide detailed instruct ...

  3. ios block 导致的循环引用

    [[NSNotificationCenter defaultCenter] addObserverForName:@"UIWindowDidRotateNotification" ...

  4. 【Oracle】Oracle时间日期格式

    to_date("要转换的字符串","转换的格式")   两个参数的格式必须匹配,否则会报错. 即按照第二个参数的格式解释第一个参数. to_char(日期,& ...

  5. 接口测试从未如此简单 - Postman (Chrome插件)

    接口测试从未如此简单 - Postman (Chrome插件) 一个非常有力的Http Client工具用来测试Web服务的, 我这里来介绍如何用它测试restful web service 注:转载 ...

  6. ITSEC TEAM 2013培训公开视频

    信息安全·WEB安全培训 - 做最靠谱的WEB安全培训网站  http://edu.itsec.pw/ ITSEC TEAM 2013公开课视频 包含XSS.CCNA 视频截图: 视频连接:http: ...

  7. laravel 重写以及500错误

    http://www.golaravel.com/laravel/docs/5.1/ sudo chmod 755 -R laravel chmod -R o+w laravel/storage

  8. MMU讲解

    MMU是Memory Management Unit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器.物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制 ...

  9. 图标的使用————JAVA——Swing

    public class MyImageIcon extends JFrame{    public MyImageIcon()    {    JFrame jf=new JFrame();     ...

  10. IE 兼容性写法

    1. 条件注释语句 <!--[if !IE]><!--> 除IE外都可识别 <!--<![endif]--> <!--[if IE]> 所有的IE ...