关于整数类型处理货币

版权声明:本文为博主原创文章,转载请附带原链接地址 。 https://blog.csdn.net/weixin_43652442/article/details/84995735

在java开发中经常涉及金额处理,但对于浮点数的运算时容易出现不准确的情况
一个简单的例子

System.out.println(10.00-9.60);

执行结果为
输出结果

针对金额运算或者小数运算可能出现的问题的解决方案

  1. 使用BigDecimal
    BigDecimal能很好的处理浮点数计算无法精确计算的问题,并且本身提供了加减乘除的常用数学算法
  2. 使用整型
    把数额扩大100倍变为整型,这个方法有一定的局限,且金额最大只能到两千万(Integer最大值为2147483647,从分算起只能到千万元),适用性没有BigDecimal好

猜你喜欢

转载自blog.csdn.net/weixin_43652442/article/details/84995735