iOS经验总结

处理iOS double精度丢失问题

2019-07-22  本文已影响0人  夏日冰霜

有些时候,后台返回类型为double类型的数值,如(double)558.93,那前端json解析后,会有精度丢失的问题,解析的结果为558.9299999999999



那如果需要前端把丢失的精度找回来,需要怎么做呢。我这里自己封装了一个方法,大家可以直接拿到项目中调用。

+ (NSString *)reviseString:(NSString *)str
{
    //直接传入精度丢失有问题的Double类型
    double conversionValue = [str doubleValue];
    NSString *doubleString = [NSString stringWithFormat:@"%.2lf", conversionValue];
    NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:doubleString];
    return [decNumber stringValue];
}

上一篇下一篇

猜你喜欢

热点阅读