iOS常用

iOS网络解析小数位精度丢失

2021-07-29  本文已影响0人  是超超呀

在项目中突然发现,原本应该返回两位小数的接口,返回的数据突然出现了小数点后很多9999的现象,打印接口返回的数据,发现接口返回的结果亦是如此,当时心想着肯定是后台的锅,不料安卓和postman调接口,全是返回的2位小数。网上查阅了资料,经查询发现苹果的json解析会莫名的丢失精度。

有下方的方法可以完美的解决这个问题
对NSString类新增方法
+(NSString *)reviseString:(NSString *)string{
//直接传入精度丢失有问题的Double类型
double conversionValue = [string doubleValue];
NSString *doubleString = [NSString stringWithFormat:@"%lf", conversionValue];
NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:doubleString];
return [decNumber stringValue];
}

上一篇 下一篇

猜你喜欢

热点阅读