BigDecimal与BigInteger和BigDecimal的性能

dal*_*awh 6 java performance biginteger bigdecimal

我在讨论是使用BigDecimal和BigInteger还是只使用BigDecimal来让我的生活更轻松,更少来回转换.在资源方面仅使用BigDecimal是否存在缺点?

如何仅使用原始数据类型和BigInteger或仅使用BigInteger来使我的生活更轻松,更少来回转换?

小智 11

来自:http://www.javamex.com/tutorials/math/BigDecimal_BigInteger_performance.shtml

请注意,BigDecimal本质上是一个围绕BigInteger的包装器,它"记住小数点的位置".

由于我们习惯于处理数字的方式,作为人类,当用非整数计算与整数相比时,我们可能不得不"多思考"(例如,我们可能已经习惯了7倍的速度某些计算,但可能不是.7倍表).但是对于计算机实现来说,操作非整数本质上并不比整数更省力,因此总的来说,BigDecimal上的方法往往与BigInteger上的类似方法类似.


Job*_*lon 0

如果您正在开发低延迟应用程序并且每一微秒都很重要,那么 BigDecimal/BigInteger 不适合您。除此之外,BigDecimal/BigInteger 没有明显的影响。

BigDecimal 的执行速度低于long, double。同样的情况也适用于 BigInteger 及其相应的原语。