java十进制_轻量级Java十进制类

我正在考虑写两个有限精度的BigDecimal替代品,即DecimalInt和DecimalLong。这些函数能够处理int和long的实数范围内的任意小数位数的数字,这些数字可以以可变和不可变的形式创建。我的计划是让十进制支持从+/-999999999到+/-0.999999999和十进制支持相同,但最多支持18位数字。

基本要求是(a)精益足迹(2个类,外加OverflowException)和(b)完全支持所有基本操作以及所有有意义的数学。

搜索结果并没有返回任何明显的点击-它们似乎都与任意小数有关。

编辑:这与BigDecimal不同,因为它应该(a)更高效地不处理一个int数组,并且(b)它不会包装BigInteger,所以它也会更节省内存,并且(c)它有一个可变选项,所以在那里也会更快。总之,对于简单的用例,比如“我想存储一个银行余额,而不需要BigDecimal的开销和double的不精确性”。

编辑:我打算使用int或long来完成所有的数学运算,以避免经典问题:1586.60-708.75=877.84999999999而不是877.85

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值