您将如何通过从原始元素中删除某些元素来解决NSArray
从现有元素中派生新元素的问题?NSArray
我知道NSMutableArray
类,但我想知道移动部件最少的方法。
在文档的Deriving arrays部分NSArray
,有类似arrayByAddingObject:
or的方法arrayByAddingObjectsFromArray:
。但是,没有通过删除某些对象来派生新数组的方法。
您过滤数组以摆脱项目。
所以:
filteredArrayUsingPredicate:
似乎符合您的需求。你需要提供一个谓词,它可以是你想要的任何东西。
列出的方法的下一个怎么样:–filteredArrayUsingPredicate:
–subarrayWithRange:
?
–filteredArrayUsingPredicate:
将返回一个新数组,其中的 objetc 与谓词定义的条件匹配。
–subarrayWithRange:
会给你一个特定范围的子数组
filteredArrayUsingPredicate:
您可以根据您的标准使用方法创建新数组。
您还可以获取 NSIndexSet 包含要继续使用indexesOfObjectsPassingTest:
方法的对象的索引,然后从原始使用objectsAtIndexes:
方法创建新数组。