这是我从JSON解析中简化的NSMutableArray:
{
main
{
array0,
array1,
array2,
array3, <----- remove!
array4, <----- remove!
array5,
array6, <----- remove!
array7, <----- remove!
array8,
...,
}
}
我正在寻找删除单个数组项目的最佳方法,例如只有数组2,4,6,8; 另外,如果我需要删除数组3,4和6,7的COUPLES,总是可以吗?
编辑:这是第一个删除SINGLE项目的解决方案:
for (int i=0; i < [array count]; i = i+1) {
[array removeObjectAtIndex:i];
}
答案 0 :(得分:2)
对我而言,您可以轻松地创建所有索引的索引集,以使用removeObjectsAtIndexes:
删除和删除这些索引处的对象。
您可以从indexesOfObjectsPassingTest:
获取所有偶数(或奇数)索引对象的索引。
NSMutableArray *array = // Your array where objects should be removed from
NSIndexSet *indexesToRemove = [array indexesOfObjectsPassingTest:^BOOL(id obj, NSUInteger idx, BOOL *stop) {
return idx%2==0; // index is even (even objects get removed)
}];
[array removeObjectsAtIndexes:indexesToRemove];