从 NSMutableArray 比较并获取索引
Posted
技术标签:
【中文标题】从 NSMutableArray 比较并获取索引【英文标题】:Compare and get the Index from NSMutableArray 【发布时间】:2013-01-24 05:55:38 【问题描述】:我有一个数组,它是数组的集合。 说 ( (1, x, y, a), (2, m, n, o), (3, s, t, u, v, w) )
如果要获取m的索引,如何获取?
可以使用 NSMutableArray contains:(id) 来完成吗?
【问题讨论】:
【参考方案1】:检查此代码:
int arrayPos = 0;
for (NSArray *tempArray in collectionArray)
if(tempArray containsObject:@"m")
int indexOfWord = [tempArray indexOfObject:@"m"];
NSlog(@"Array pos: %d Index is : %d",pos, indexOfWord);
pos++;
在 for 循环中,您可以获取添加到集合数组中的每个数组。之后,您将检查数组中是否存在该单词。如果它存在,您正在显示它。 还打印数组的位置。
元素位于:
NSString *str = [[collectionArrayObjectAtIndex:pos] objectAtIndex:indexOfWord];
【讨论】:
【参考方案2】:NSArray *arrWithArr;
NSArray *arrWithM;
NSInteger arrIndex;
for (int i = 0; i< [arrWithArr count]; i++)
if ([[arrWithArr objectAtIndex:i] containsObject:@"m"])
arrIndex = i; break;
NSInteger mIndex = [[arrWithArr objectAtIndex:arrIndex]indexOfObject:@"m"];
【讨论】:
完美,可以得到数组索引和元素索引。谢谢【参考方案3】:您所说的函数“[NSMutableArray contains:]
”会告诉您对象“B”是否存在于 A,B,C 的数组中。
您真正需要做的是提供第二个函数,该函数通过您的父数组进行快速枚举,然后在子数组上执行“contains
”。如果找到“m”,则返回“YES”以及该条目在父数组中的索引。
【讨论】:
是的,我确实是这样写的,我得到了下面的答案。真的谢谢。以上是关于从 NSMutableArray 比较并获取索引的主要内容,如果未能解决你的问题,请参考以下文章
通过 AFNetworking 在指定索引处将 UIImage 添加到 NSMutableArray
Xcode 8.3 和 Swift 3:在 UICollectionView 中的单元格中显示图像,从 URL 获取并存储在 NSMutableArray
从 URL 将对象添加到 NSMutableArray 的更快方法
iCarousel 从 NSMutableArray 加载 UIViews