iOS double转字符串精度流失问题

  • 原理什么的,我也不赘述了,网上都有,下面是解决方法
/*
     * 这里如果直接取 self.myLab.text = [NSString stringWithFormat:@"%@",dataDict[@"surplus_money"]];
     * 会发现,精度流失的现象
     
     * 应采用 NSDecimalNumber 解决此类问题
     */

double tixianD = [dataDict[@"surplus_money"] doubleValue];
self.myLab.text = [self changeDoubleToString:tixianD];
- (NSString *)changeDoubleToString:(double)d{
    NSString *dStr = [NSString stringWithFormat:@"%f", d];
    NSDecimalNumber *dn = [NSDecimalNumber decimalNumberWithString:dStr];
    return dn.stringValue;
}

你可能感兴趣的:(iOS double转字符串精度流失问题)