如果声明出错-xcode

snk*_*snk 1 c if-statement objective-c

伙计我做错了什么?

if (numberstring.intValue <=15) {
    rankLabel.text = @"A1";
}
else if (numberstring.intValue >16 && <=40){       
    rankLabel.text = @"A2";
}
Run Code Online (Sandbox Code Playgroud)

我在"<= 40"上收到错误..

tro*_*foe 5

你错过了一个变量引用:

if (numberstring.intValue <=15) {
    rankLabel.text = @"A1";
}                                  //        vv here vv
else if (numberstring.intValue >16 && numberstring.intValue <= 40){       
    rankLabel.text = @"A2";
}
Run Code Online (Sandbox Code Playgroud)

作为一个可选的额外功能,它看起来像是numberstring一个NSString对象,您可以反复转换为整数以测试各种范围.这个操作非常昂贵,所以你最好做一次转换:

int value = [numberstring intValue];
if (value <=15) {
    rankLabel.text = @"A1";
}
else if (value >16 && value <= 40){       
    rankLabel.text = @"A2";
}
Run Code Online (Sandbox Code Playgroud)

另请注意,该intValue方法不是属性,因此我将避免使用Objective-C 2.0点语法来访问它并使用常规方法调用机制.