美文网首页
iOS JSON解析精度丢失 并 NSString 转 Doub

iOS JSON解析精度丢失 并 NSString 转 Doub

作者: admxjx | 来源:发表于2017-10-13 20:03 被阅读381次

    题注:iOS 当请求到的数据是double类型,会失去精准度,并且去掉小数点后的0

    1. 服务器返回 9.88
    2. XCode使用double接收

    问题: 因为数据和利率有关,产品要求小数位去无效0。 也就是说 9.00%显示 9%,9.80%显示9.8%;

    ===============解决方法:

    1. jsonmodel 使用NSString接收 《不推荐,会有丢失精度》
    2. 使用NSDecimalNumber
    

    =============== 上代码(NSDecimalNumber)

    double num = 9.88000;
    // 转成string
    NSString *doubleString = [NSString stringWithFormat:@"%lf", num];
    // 将字符串转成一个十进制数。
    NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:doubleString];
    NSLog(@"%@", [decNumber stringValue]);
    

    =============== 上效果截图(有图有真相)

    后台返回percent : 9.88 在json解析时失去精度

    image.png

    本人QQ:1103868202... 新建QQ群:398369031

    欢迎来讨论交流技术。

    PS:(现就职于滨江. 合么金服 )

    相关文章

      网友评论

          本文标题:iOS JSON解析精度丢失 并 NSString 转 Doub

          本文链接:https://www.haomeiwen.com/subject/jpktuxtx.html