后臺返回的浮點類型的數(shù)據(jù)為 9.37,
但是在使用浮點顯示的時候就會變成 9.369999999999999 這種樣子的,
這就是精度丟失導致的,
比較好的辦法就是 后臺直接返回字符串 "9.37",
但是在項目已經(jīng)完成的情況下出現(xiàn)這種情況, 那么就需要前端操作了
// double 轉 string 處理精度問題
+ (NSString *)decimalNumberWithDouble:(double)conversionValue {
NSString *doubleString = [NSString stringWithFormat:@"%lf", conversionValue];
NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:doubleString];
return [decNumber stringValue];
}
可以把上面的這個方法 設置為公用的, 將后臺獲取的浮點數(shù)轉成string類型 就不會出現(xiàn)精度問題了