无法设置 NSNumber numberWithFloat

Unable to set NSNumber numberWithFloat

我无法像这样在对象上设置属性:

NSLog(@"setting: %f", tempVal);
self.device.mainProperty.wanted = [NSNumber numberWithFloat:tempVal];
NSLog(@"set: %f", self.device.mainProperty.wanted.floatValue);

这给了我以下输出:

2015-07-28 17:18:24.775 App[5488:1480266] setting: 4.500000
2015-07-28 17:18:24.775 App[5488:1480266] set: 4.000000

我对此感到非常沮丧,这对我来说毫无意义。但也许有人可以帮助我。谢谢

编辑: 我将此代码用于仅使用整数的地方。然后就可以正常使用了。

所以,我在漫长的一天工作结束后变成了一个笨蛋。我忘记了 NSNumber 'wanted' 是来自核心数据存储的整数。显然,当您为该属性设置浮点数时,它会自动将其转换为整数,即使我没有将其保存到数据存储区或其他任何地方。经过重量级的数据迁移,一切都很好。你知道的越多