两个浮点数的乘法提供如下值 130.82(float)X 62.0(float)= 8110.8403(float)而不是8110.84。
另外,500001.0(浮动)X 47.0(浮动)= 2.3500048E7(双)而不是23500047
答案 0 :(得分:1)
如果是货币计算,那么你可以尝试使用BigDecimal,int或long。
Floats和double都不能用于精确计算。两种数据类型都遵循(IEEE 754)标准。
答案 1 :(得分:0)
难以理解所有计算值的长度为8个唯一数字,后跟指数值;)
要确保您的值与默认长度有任何不同,您必须自己设置或最大值,或者在示例中使用round($ value,$ precision(小数点后面的长度)) PHP
否则,当然,该值将保留默认长度。