接口返回数据类型NSNumber
如下84.43000000000000
71.1799999999999999
这种情况只会在iOS中出现,Android中是正常的
处理方法
1.让后台给数值类型的数据改成字符串类型
2.
![](https://img.haomeiwen.com/i6894675/3b77ec1450e272d8.png)
或者 (这种方法有可能是无效的)
*!
@brief 修正浮点型精度丢失
@param str 传入接口取到的数据
@return 修正精度后的数据
*/
+(NSString *)reviseString:(NSString *)str
{
//直接传入精度丢失有问题的Double类型
double conversionValue = [str doubleValue];
NSString *doubleString = [NSString stringWithFormat:@"%lf", conversionValue];
NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:doubleString];
return [decNumber stringValue];
}
网友评论