Objective c 是否可以将字符串枚举为整数以进行快速比较?(目标-C)
我需要将3Objective c 是否可以将字符串枚举为整数以进行快速比较?(目标-C),objective-c,enumeration,Objective C,Enumeration,我需要将3NSString枚举为整数,这样比较两个数字就很容易了,并找出哪个是较低的数字。这3个字符串是: @"verde" = 1 @"giallo" = 2 @"rosso" = 3 它应该与if语句中的另一个整数进行比较。这可能吗?听起来您需要enum。试试这个: 步骤1:定义如下枚举: typedef NS_ENUM (NSInteger, MyStrings) { Verde = 0, Giallo, Rosso }; @property (nonatomi
NSString
枚举为整数
,这样比较两个数字就很容易了,并找出哪个是较低的数字。这3个字符串是:
@"verde" = 1
@"giallo" = 2
@"rosso" = 3
它应该与
if语句中的另一个整数进行比较。这可能吗?听起来您需要enum
。试试这个:
步骤1:定义如下枚举:
typedef NS_ENUM (NSInteger, MyStrings) {
Verde = 0,
Giallo,
Rosso
};
@property (nonatomic, assign) MyStrings string;
self.string = 2; // Setting property value
if (self.string < Verde) {
NSLog(@"Small Value");
} else {
NSLog(@"Big Value");
}
步骤2:定义一个枚举类型属性,如下所示:
typedef NS_ENUM (NSInteger, MyStrings) {
Verde = 0,
Giallo,
Rosso
};
@property (nonatomic, assign) MyStrings string;
self.string = 2; // Setting property value
if (self.string < Verde) {
NSLog(@"Small Value");
} else {
NSLog(@"Big Value");
}
第3步:最后按如下方式使用:
typedef NS_ENUM (NSInteger, MyStrings) {
Verde = 0,
Giallo,
Rosso
};
@property (nonatomic, assign) MyStrings string;
self.string = 2; // Setting property value
if (self.string < Verde) {
NSLog(@"Small Value");
} else {
NSLog(@"Big Value");
}
self.string=2;//设置属性值
if(self.string
我不能100%确定我是否理解,但这可能是您想要的。保留字符串到整数映射的字典:
NSDictionary *stringMap = @{
@"verde": @(1),
@"giallo": @(2),
@"rosso": @(3)
};
在进行比较时,要做到:
NSString *s1 = @"verde";
NSString *s2 = @"rosso";
NSNumber *n1 = stringMap[s1];
NSNumber *n2 = stringMap[s2];
if (n1 && n2) {
NSComparisonResult result = [n1 compare n2];
if (result == NSOrderedAscending) {
// s1 < s2
} else if (result == NSOrderedDescending) {
// s1 > s2
} else {
// s1 == s2
}
}
NSString*s1=@“verde”;
NSString*s2=@“rosso”;
NSNumber*n1=stringMap[s1];
NSNumber*n2=stringMap[s2];
如果(n1和n2){
NSComparisonResult=[n1比较n2];
如果(结果==传感器解除设定){
//s1s2
}否则{
//s1==s2
}
}
现在还不太清楚您想在这里实现什么。这些字符串是字典里的键吗?我不知道你在做什么,但是。。。枚举可以帮助您吗?字典中没有字符串,我只想为“verde”、“giallo”和“rosso”字符串值指定数字:1、2和3来比较它们,因为您可以将字符串与number@Zil我怎么做?