java数学精确运算—BigDecimal()类

在Java中直接做运算会产生数值不精确的问题,所以Java语言提供了更加准确的API,即BigDecimal()类:

import java.math.BigDecimal;
import java.math.RoundingMode;
public class TestBigDecimal {
    public static void main(String[] args) {
        BigDecimal d1 = new BigDecimal("2.0");
        BigDecimal d2 = new BigDecimal("1.1");
        /*
        .add    加法
        .subtract   减法
        .multiply   乘法
        .divide     除法
        */

        BigDecimal d3 = d1.subtract(d2);
        System.out.println(d3);//准确
        System.out.println(2.0-1.1);
        System.out.println(20.0/6.0);


        BigDecimal d4 = new BigDecimal("20.0");
        BigDecimal d5 = new BigDecimal("3.0");
        System.out.println(20.0/3.0);
        //参数1:除数    参数2: 小数点后保留位数       参数3:舍入模式
        BigDecimal d6 = d4.divide(d5, 4, RoundingMode.HALF_UP);//四舍五入,jdk   math.RoudingMode
        System.out.println(d6);//保留4位

    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值