2009-12-14 47 views
2

的索引中的下面的行工作正常在NSLog提取一个Xcode阵列

NSLog(@"Selected Number: %@. Index of selected number: %i", [arrayNo objectAtIndex:row], row); 

但我想使分配给整数变量的索引:

int num = ([arrayNo objectAtIndex:row], row); 

线以上产生错误。我做错了什么?

回答

4

NSArray或NSMutableArray管理对象,无法直接处理整数。对[arrayNo objectAtIndex:row]的调用返回一个对象。要获得整数值,您可以尝试:

int num = [[arrayNo objectAtIndex:row] intValue]; 
0

在您的代码中,提取对象不会执行任何操作。你只是扔掉它。你想要做的是:

int num = row; 

如果你想只分配指数为特定值NUM,你可以做这样的事情(假设数组只包含NSNumbers):

int num; 
for(NSNumber *n in array) { 
    if ([n integerValue] == 5) { 
     num = [array indexOfObject:n]; 
     break; 
    } 
}