核心数据布尔属性NSNumber不记得它的布尔值

aby*_*byx 7 iphone core-data objective-c ios

我有一个具有如下属性的模型:

在此输入图像描述

当我设置其值时,例如:

model.isResolved = @YES;
Run Code Online (Sandbox Code Playgroud)

保留在模型中的NSNumber"忘记"它是一个布尔值:

NSLog(@"%@", strcmp([self.isResolved objCType], @encode(BOOL)) == 0 ? @"equal" : @"different");
Run Code Online (Sandbox Code Playgroud)

打印"不同".怎么了?

小智 3

这是怎么回事?

文档中:

请注意,数字对象不一定保留它们创建时所用的类型。

这是 Cocoa 中另一个优化不一致的地方。