有什麼辦法可以跳過處理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,您可以將整數簡單地分配給代碼中的屬性。 –