Ios 核心数据和';双倍';财产不起作用。一个数字是否转换为nan?

Ios 核心数据和';双倍';财产不起作用。一个数字是否转换为nan?,ios,core-data,double,nan,Ios,Core Data,Double,Nan,我对核心数据中的“double”属性有一个奇怪的问题。 我已将这两行中的问题隔离开来: newStrategy.order = 444.0; NSLog(@"Order is %f", newStrategy.order); 该NSLog的输出为: Order is nan newStrategy类型是“Strategy”,这是我在核心数据中定义的实体之一。“order”属性声明为 @property (nonatomic) double order; 在核心数据生成文件中 当然,保存数

我对核心数据中的“double”属性有一个奇怪的问题。 我已将这两行中的问题隔离开来:

newStrategy.order = 444.0; 
NSLog(@"Order is %f", newStrategy.order);
该NSLog的输出为:

Order is nan
newStrategy类型是“Strategy”,这是我在核心数据中定义的实体之一。“order”属性声明为

@property (nonatomic) double order;
在核心数据生成文件中

当然,保存数据时,“订单”不会存储为444.0。奇怪的情况是,我有其他核心数据实体(带有关联文件),它们使用类似的“order”属性作为double,它们在类似的操作中根本没有给我带来任何问题


有什么想法吗?提前感谢。

核心数据模型中的一些不一致是原因,因此重新创建属性会有所帮助。我在模型和.h文件中将它从“double”改为“float”。然后,我又回到了“双倍”,现在它开始工作了

订单在核心数据模型中是否正确定义为双精度?是的。我现在已经改成了一个float(到处都是,模型和源文件),它似乎可以工作。但这并不是一个令人满意的解决方案,只是一种手段。我认为这个问题与我的应用程序中太多的“订单”属性有关。我有3个实体,它们都使用双“顺序”属性。是吗?阿西尔瓦,不,实体上的财产名称是独立的。我的应用程序中几乎每个实体都有一个
date
属性。这没有问题。安德烈·普兹林。我会检查模型文件,XML代码,以确保属性定义正确。如果模型文件中出现问题,删除属性并重新创建它也可能会有所帮助。除此之外,不知道。使用日志和断点定义自己的(double)order和(void)setOrder:(double)值可能有助于找到错误。谢谢fabrice。在用一个浮点数试过之后,我把它改回了双精度,现在它似乎可以工作了。正如你所说的,某种娱乐有帮助。可能的经验教训:如果核心数据的问题似乎不合逻辑,或者行为似乎不一致,那么重新创建模型可能会有所帮助。