Mac*_*Mac 2 core-data nsnumber ios
我应该使用NSNumber还是字符串,以保存一个简单的"playerID号码",现在是一个整数,因为我想用Core Data保存它?
在我的数据模型中,我将playerID设置为Integer 16,但Core Data希望NSNumber能够正常工作.这似乎是lika很多代码"没有" - 例子;
NSInteger myValue = 1;
NSNumber *number = [NSNumber numberWithInteger:myValue];
p1.playerID = number;
// Instead of just;
p1.playerID = 1;
// or
p1.playerID.myIntValue;
Run Code Online (Sandbox Code Playgroud)
只是想知道将它设置为字符串而不是更容易然后根据需要来回转换值(playerID)?对此有任何智慧(经验)的话?谢谢 :-)
Dan*_*ert 10
在您的实体上,定义@property如下:
@property (nonatomic) int32_t playerID;
Run Code Online (Sandbox Code Playgroud)
然后你就可以简单地设置它
p1.playerID = 1;
Run Code Online (Sandbox Code Playgroud)
这非常优雅,非常快.
换句话说,不要将其定义为NSNumber *.但即使你这样做,表现仍然非常出色.读取和编写这样的代码更容易.另请注意,使用最新的Xcode版本,您可以使用@(myInt)而不是[NSNumber numberWithInt:myInt].
请务必查看如何将其用于枚举:使用核心数据实现枚举的最佳方式(查找我的答案).
| 归档时间: |
|
| 查看次数: |
2651 次 |
| 最近记录: |