我正在开发一个我想要使用的应用程序NSDictionary.任何人都可以给我一个示例代码,解释如何使用NSDictionary一个完美的例子来存储数据的过程?
在Objective-C中是否可以查看某个int值是否在某个特定值enum?例如,在这个枚举中:
enum {
ValidationLoginFailed = 2000,
ValidationSessionTokenExpired = 2001,
ValidationSessionTokenInvalid = 2002,
ValidationEmailNotFound = 2003
};
typedef int ValidationStatusCodes;
Run Code Online (Sandbox Code Playgroud)
有可能看到一个任意整数值是ValidationStatusCodes enum?
[ValidationStatusCodes contains:intResponseCode]
Run Code Online (Sandbox Code Playgroud)
或至少
[self intIsInRangeofEnum:ValidationStatusCodes forValue:intResponseCode]
Run Code Online (Sandbox Code Playgroud) 我试图实现一个简单的方法,但我仍然是objective-c的新手.
我有这个简单的方法,如果匹配,它试图从枚举转换为枚举中的特定值.
这是枚举
typedef enum {
DXTypeUnknown = 0,
DXDatasource = 1,
DXGroup = 2
} DXPropertyType;
Run Code Online (Sandbox Code Playgroud)
这是相关的方法:
-(DXPropertyType)typeFromObject:(id)_type {
int _t = [_type intValue];
switch (_t) {
case DXDatasource:
return [NSNumber numberWithInt:DXDatasource];
case DXGroup:
return [NSNumber numberWithInt:DXGroup];
default:
return [NSNumber numberWithInt:DXTypeUnknown];
}
}
Run Code Online (Sandbox Code Playgroud)
我要实现的第一个检查是如果id可以转换为int,然后查看它是否属于两个相关的类别组或数据源,或者如果没有则返回默认值.你能告诉我我实施的开关/箱子是否是一个合适的解决方案?我也希望这种方法不会导致应用程序崩溃,所以最好检查一下,记住在任何情况下都要返回默认值.
谢谢
[编辑] 我忘了说这个值将存储在NSManagedObject的一个字段中,由CoreData限制可以是一个NSNumber,所以可能有一个更好的解决方案而不是枚举.