我正试图用Java中的数据类型代表钱。但是有一个条件: 钱总是一个整数 (例如$ 500,$ 10000000)。我想到的选择是:
我应该使用哪一个?
编辑:这不是重复,不同之处在于我需要使用 仅限整数 来赚钱,这带来了精确性和适用性的问题!
答案 0 :(得分:1)
请勿使用double
。如您所知,浮点计算可能会导致精度下降。
BigInteger
可行,但它是一种参考类型,使用起来更加尴尬。
使用long
。最大值为9223372036854775807
,对于实际目的而言可能足够大。