有什么办法可以跳过处理NSNumber并直接使用NSInteger?在核心数据中存储NSInteger
0
A
回答
3
核心数据将只允许NSNumbers。但是,您可以编写自定义getter和setter来使用NSInteger属性。 mogenerator是一个很棒的工具,可以自动为您执行:它为您的所有实体生成具有本机属性的类。
2
编号NSInteger
只是一个长整型的typedef,而不是一个对象。
实际实现:
#if __LP64__ || NS_BUILD_32_LIKE_64
typedef long NSInteger;
typedef unsigned long NSUInteger;
#else
typedef int NSInteger;
typedef unsigned int NSUInteger;
#endif
的NSNumber
类允许原始类型(int
,float
等)转换成一个对象,然后可将其存储到属性列表和核心数据的封装。
实施例:
float pi = 3.1415;
NSNumber *piNumber = [NSNumber numberWithFloat:pi];
然后,可以方便地访问和/或转换存储在NSNumber
对象的值:
int piAsInteger = [piNumber intValue];
相关问题
- 1. 在核心数据中存储UUID
- 2. 在核心数据中存储NSDate(swift)
- 3. 在核心数据中存储MKRoute
- 4. 在核心数据中存储ABRecordRef
- 5. 将核心数据存储在NSOperation中
- 6. 存储NSAttributedString核心数据
- 7. 将UITextView存储到核心数据中
- 8. 核心数据:删除存储在核心数据中的视图
- 9. 整型NSInteger的并保存到核心数据
- 10. Xcode-将数据存储在核心数据或SQLite中?
- 11. 如何查看存储在核心数据中的数据?
- 12. 在iPhone上的核心数据中存储二进制数据
- 13. 将XML数据存储在核心数据中
- 14. 如何在核心数据中存储CLPlacemark地址数据
- 15. 核心数据如何存储NSData?
- 16. 崩溃存储到核心数据
- 17. Mac OSX - 核心数据未被存储
- 18. 备份/共享核心数据存储
- 19. 核心数据文件存储
- 20. 核心数据没有正确存储
- 21. 核心数据对象不会存储
- 22. 使用核心数据存储对象
- 23. 核心数据存储装置
- 24. 存储核心数据的日期
- 25. 云核心数据存储多用户
- 26. 本地核心数据存储与icloud
- 27. 存储核心数据一个UIViewController
- 28. iPhone本地存储 - 核心数据,NSFileManager,...?
- 29. 数据不被存储在核心数据的数据库
- 30. 核心数据不存在
同样在Xcode的当前版本(4.3.2和此评论中)中,您可以在生成NSManagedObject子类时选中“为基元数据类型使用标量属性” - 这将导致编译器“只知道”使合成访问者提升/降级NSNumber和适当的标量。例如,“Integer 32”将在您生成的.h文件中声明为int32_t,您可以将整数简单地分配给代码中的属性。 –