Objective C if 语句中的 NSNumbers
Objective C NSNumbers in if statements
您好,我正在从数组中检索 NSNumber 值(评级,例如 4.3),然后我需要测试该值以分配星级图像。
然而,当我编写 if 语句时,出现错误 "Expected Expression"
代码如下:
if (rating >=1 && <2) {
return [UIImage imageNamed:@"1starimage"];
}else if (rating >=2 && <3){
return [UIImage imageNamed:@"2starimage"];
}
感谢您对我如何做到这一点而不会导致错误的任何解释。
第二次比较的左侧缺失
应该是if (rating.floatValue >=1 && rating.floatValue<2)
在具有多个测试值的 if
语句中,您必须为每个比较提供完整的表达式。
所以在您的情况下,您必须执行以下操作:
if ([rating floatValue] >= 1 && [rating floatValue] < 2) {
return [UIImage imageNamed:@"1starimage"];
} else if ([rating floatValue] >= 2 && [rating floatValue] < 3){
return [UIImage imageNamed:@"2starimage"];
}
您好,我正在从数组中检索 NSNumber 值(评级,例如 4.3),然后我需要测试该值以分配星级图像。
然而,当我编写 if 语句时,出现错误 "Expected Expression"
代码如下:
if (rating >=1 && <2) {
return [UIImage imageNamed:@"1starimage"];
}else if (rating >=2 && <3){
return [UIImage imageNamed:@"2starimage"];
}
感谢您对我如何做到这一点而不会导致错误的任何解释。
第二次比较的左侧缺失
应该是if (rating.floatValue >=1 && rating.floatValue<2)
在具有多个测试值的 if
语句中,您必须为每个比较提供完整的表达式。
所以在您的情况下,您必须执行以下操作:
if ([rating floatValue] >= 1 && [rating floatValue] < 2) {
return [UIImage imageNamed:@"1starimage"];
} else if ([rating floatValue] >= 2 && [rating floatValue] < 3){
return [UIImage imageNamed:@"2starimage"];
}