需要精确答案,避免使用float和double

本文探讨了float和double类型的适用场景及限制,推荐在科学计算中使用;对于需要精确结果的应用,如货币计算,则建议使用BigDecimal;若追求高性能且数值范围有限,可考虑使用int或long。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 float和double类型主要是为了科学计算和工程计算而设计的。它们执行二进制浮点运算,这是为了在广泛的数值范围上提供较为精准的快速近似计算而精心设计的,然而它们并没有提供完全精准的结果,所以不应该用于需要精准结果的场合。尤其不适合用于货币计算

2 如果想让系统来记录十进制小数点,并且不介意因为不使用基本类型带来的不便,应该使用BigDecimal。

3 如果性能非常关键,并且不介意自己记录十进制小数点,而且所设计的数值又不会很大,可以是int或者long。如果数值范围没有超过9位十进制数字,可以使用int;如果不超过18位数字,可以使用long。如果超过18位,就必须使用BigDecimal。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值