NSString是@"16.240"
它的doubleValue是16.239999999999998
幕后发生了什么?
答案 0 :(得分:0)
答案 1 :(得分:0)
如果它是价格(或一般金钱)的价值,最好使用NSDecimalNumber
,因为它会按原样保存浮动值的每个部分。
NSDecimalNumber *price = [NSDecimalNumber decimalNumberWithString:@"16.240"];
NSLog(price); //16.24
http://rypress.com/tutorials/objective-c/data-types/nsdecimalnumber