不能够直接使用[NSArray count]在if中做比较,会有错误发生

int tempCount   =  -1;
NSArray* array = [[NSArray alloc] init];
if( tempCount >= [array count]) { int NewsChangeParam = -1; }

因为array是无符号int型,所以比较的时候会把前面的int也转为无符号int型。

-1 无符号int型 等于:4294967295

所以本判断是成立的。会进入到

int NewsChangeParam    =   -1;

需要使用这种方法去做array count比较
NSArray* array   = [[NSArray alloc]init]; 
int tempCount   =  -1;
int arrayCount   = [array count];
    if(tempCount >=  arrayCount)
    {
        _NewsChangeParam    =   -1;
    }