1

在核心数据实体中,我们必须将原始数字(char、int、float、double 和 BOOL)包装到类簇 NSNumber。

虽然核心数据用户界面让我们指定一个类型,我特别提到它为 BOOLEAN,默认类型为 YES 或 NO。

现在,当我从 API 调用中获得 JSON-converted-NSDictionary 时,我尝试将布尔值 true 或 false 存储到此属性中。

但是我注意到,在为调试器控制台中的键打印核心数据实体的类和 json-dictionary 的相应值时,

Core Data 实体的 NSNumber 包装属性类是 __NSCFNumber,而字典的键值是 __NSCFBoolean。

我知道类集群模式,并且我知道我们在 NSNumber 下有子类,它们的实际对象是在调用 numberWithInt 或 numberWithBool 时创建的,并表示为一个总称 NSNumber。

但我不明白的是,为什么调试器没有将 Core Data 实体 bool 属性显示为 __NSCFBoolean ?

4

0 回答 0