《effective java》48—如果需要精确的答案,请避免使用float和double

float和double类型并不适合用于货币计算,因为要让一个float或者double精确地表示0.1是不可能的。 比如: 可以看到计算结果并不正确。 解决这个问题的正确办法是使用BigDecimal、int或者long进行货币计算。 举个例子: 你口袋里有1块钱,货架上有价格从1毛、2毛、3毛一直到1块钱的糖果。你打算从标价为1毛的糖果开始买,每种买一颗,一直到不能支付货架上的下一种货物为止,
相关文章
相关标签/搜索