【问题标题】:Check whether data is present at an index in NSMutableArray检查数据是否存在于 NSMutableArray 中的索引处
【发布时间】:2011-01-21 08:59:11
【问题描述】:

我有一个NSMutableArray,我想在其中插入数据,问题是首先我想检查我插入数据的索引是否存在。怎么做? 我尝试了类似的方法,但没有任何效果:

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

if (![eventArray objectAtIndex:j])

【问题讨论】:

    标签: iphone objective-c cocoa-touch nsmutablearray


    【解决方案1】:
    if (j < [eventArray count])
    {
         //Insert
    }
    

    【讨论】:

    • 不回答 OP 的问题; ludo 正在寻找类似于稀疏数组的东西。
    • 我有时很傻 -,.- 无论如何感谢您的快速回答~ ^^
    • 不不,它工作得很好,我什至没想到这么简单哈哈
    【解决方案2】:

    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 个“洞”的数组以供稍后填充) .

    【讨论】:

    • 这不能回答 OP 的问题:P
    【解决方案3】:

    我在这个问题中给出了稀疏数组的简要实现:Sparse Array answer

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-01
      • 1970-01-01
      • 2010-09-20
      • 2014-01-26
      • 2021-07-22
      • 2014-01-02
      • 1970-01-01
      • 2012-12-08
      相关资源
      最近更新 更多