1
double test1 = 5.58f;

NSString *test2 = @"5.58";

NSLog(@"%@", [NSNumber numberWithDouble:test1]);

NSLog(@"%@", [NSNumber numberWithDouble:[test2 doubleValue]]);

输出:

5.579999923706055

5.58

为什么转换是不同的?

4

1 回答 1

3

可能是因为 5.58f 是 a float,而不是 a double

于 2012-07-30T03:43:41.770 回答