nsnumber如何?== NIL在运行时在Objective-C中提交



今天,我开始创建一个简单的XCDATAMODEL,其中只有1个实体,其中很少。因此,当我创建类型Integer 16的数字属性在NSManagedObject的类定义中,其类型为NSnumber?

class JournalEntry : NSManagedObject {
    @NSManaged var date: Date?
    @NSManaged var height: String?
    @NSManaged var period: String?
    @NSManaged var wind: String?
    @NSManaged var location: String?
    @NSManaged var rating: NSNumber?
}

为什么不在int16中?(我读过OBJC没有int?类型) (因为在模型中,我允许属性是可选的),所以如果我不为nsnumber分配值?属性在运行时如何在OBJC中代表?(它将为零?P.S.我将初始值删除为零,因此没有初始值)

由于您的额定值是可选的NSNUMBER,因此初始值为零(您可以理解为"无值")或Coredata模型编辑器中提供的默认值。另外,在Swift中,您应该能够使用INT64而不是NSNUMBER

最新更新