Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IOS字符串长度比较问题_Ios_Objective C - Fatal编程技术网

IOS字符串长度比较问题

IOS字符串长度比较问题,ios,objective-c,Ios,Objective C,我正在努力进行if比较-我基本上想做两个比较-两者都需要通过-第一个是basic,如果字符串变量等于'rec',第二个是字符串字符限制不等于零 我尝试过各种组合,但这就是我在mo的位置 ArticleObject *A = [self.articleArray objectAtIndex:indexPath.section]; NSInteger imglength = [A.arImage length]; if([A.arRec isEqual: @"rec"] ) &&am

我正在努力进行if比较-我基本上想做两个比较-两者都需要通过-第一个是basic,如果字符串变量等于'rec',第二个是字符串字符限制不等于零

我尝试过各种组合,但这就是我在mo的位置

 ArticleObject *A = [self.articleArray objectAtIndex:indexPath.section];
 NSInteger imglength = [A.arImage length];

 if([A.arRec isEqual: @"rec"] ) && (imglength !=Nil){
     return 195;
 }
 else return 50;
我在(imglength)比较中得到了一个预期的标识符错误-如本屏幕截图所示


有谁能帮我解释一下吗?

你的括号搞乱了:

if([A.arec isEqualToString:@"rec"] && (imglengyb !=Nil))
                                                      ^--------------//here
也许更好的方法是:

if([A.arec isEqualToString:@"rec"] && [[A.arImage length] != 0])

有几件事你应该改变:

ArticleObject *A = self.articleArray[indexPath.section];
NSInteger imglength = [A.arImage length];

if (imglength && [A.arRec isEqualToString:@"rec"]) {
     return 195;
} else {
     return 50;
}

不要使用
Nil
(或
Nil
)对于基本类型。

只是一个语法观察,你不应该将整数值与
Nil
Nil
进行比较。你应该将它们与
0
进行比较。Nil值指的是一个不存在的对象。现场欢呼@meda效果很好,除了指针和整数之间的警告性比较之外,现在一切都很酷了(nsInteger)和void,所以用否决票删除我的类似答案似乎神奇地给了你一个代表点。你似乎否决了我,让我支持你的答案。你想解释一下吗?