我一直在使用NSMutableArray,并且使用objectAtIndex:int
从数组中检索对象没有任何问题。而不是通过整数将对象拉出数组,这是通过用字符串搜索数组来获取索引位置的方法。
animalOptions = [[NSMutableArray alloc] init];
//Add items
[animalOptions addObject:@"Fish"];
[animalOptions addObject:@"Bear"];
[animalOptions addObject:@"Bird"];
[animalOptions addObject:@"Cow"];
[animalOptions addObject:@"Sheep"];
NSString * buttonTitle = [animalOptions objectAtIndex:1];
// RETURNS BEAR
int * objectIndex = [animalOptions object:@"Bear"];
// THIS IS WHAT I NEED HELP WITH, PULLING AN INDEX INTEGER WITH A STRING (ex: Bear)
希望这是有道理的,并且有一个答案,我无法在线研究并通过谷歌或苹果的课程参考找到任何东西。
答案 0 :(得分:34)
您可以使用indexOfObject:
中的NSArray
方法:
NSUInteger index = [animalOptions indexOfObject:@"Bear"];
如果有重复的条目,则返回该对象的最低索引。有关详细信息,请查看docs。
答案 1 :(得分:0)
你可以使用[array indexOfObject:object]来返回该对象的索引,现在按照你想要的方式,它可能不会被打开,因为你指定的字符串不是实际的字符串对象。然而,执行此操作的数组将无法正常工作
NSString * buttonTitle = [animalOptions objectAtIndex:1];// RETURNS BEARint
objectIndex = [animalOptions indexOfObject:buttonTitle] //this will return 1