情景描述:后台返回钱包余额balance字段为double类型,值为197.895
到客户端,数据请求成功后,你print 拿到的balance字段,发现值变成了197.89444444444.
这是不是很奇怪,很郁闷啊,怎么自己变了?
正确解析方法:
NSString * balanceStr = ([[dataDic allKeys] containsObject:@"balance"]) ? [NSString stringWithFormat:@"%lf",[[dataDic objectForKey:@"balance"] doubleValue]] : @"";
self.balanceNumber.text = [[NSDecimalNumber decimalNumberWithString:balanceStr] stringValue];
首先把拿到的balance字段转换成double类型,通过NSDecimalNumber系统类的decimalNumberWithString方法 四舍五入成197.895











网友评论