检查NSMutableArray中是否存在某个索引处的数据

7

我有一个NSMutableArray,我想在其中插入数据,但问题是首先我想检查我要插入数据的索引是否存在。如何做到这一点?我尝试了以下代码但没有起作用:

if ([[eventArray objectAtIndex:j] count] == 0)

或者

if (![eventArray objectAtIndex:j])
3个回答

11
if (j < [eventArray count])
{
     //Insert
}

不回答原帖的问题;ludo正在寻找类似于稀疏数组的东西。 - bbum
1
有时候我很蠢,不过还是谢谢你这么快的回答~ ^^ - ludo
不不不,它完美地工作了,我甚至没有想到那么简单哈哈。 - ludo

3

NSArrayNSMutableArray不是稀疏数组。因此,没有“存在于索引位置”的概念,只有“该数组是否有N个或更多元素”的概念。

对于NSMutableArray,可变操作的总和为:

- (void)addObject:(id)anObject;
- (void)insertObject:(id)anObject atIndex:(NSUInteger)index;
- (void)removeLastObject;
- (void)removeObjectAtIndex:(NSUInteger)index;
- (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;

所有其他可变性方法都可以通过上述方法表达,更具体地回答你的问题:删除对象不会创建空白(也无法创建一个包含N个“空白”以供以后填充的数组)。


4
这不回答提问者的问题 :P - willcodejavaforfood

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接