现在的位置: 首页 > 综合 > 正文

ios cocos2d cocos3d box2d [21] NSMutableArray 循环删除

2018年05月18日 ⁄ 综合 ⁄ 共 780字 ⁄ 字号 评论关闭

转载自:http://lijianyeath.blog.163.com/blog/static/1261149042011525101230120/

方法1:

NSMutableArray *myArray;

NSArray *myArrayCopy = [NSArray arrayWithArray:myArray];

for (NSObject *anObject in myArrayCopy) {

        if (shouldRemove(anObject)) {

                [myArray removeObject:anObject];

        }

}

方法2:

NSMutableArray *array = ...

NSMutableArray *itemsToKeep = [NSMutableArray arrayWithCapacity:[array count]];

for (id object in array) {

    if (! shouldRemove(object)) {

        [itemsToKeep addObject:object];

    }

}

[array setArray:itemsToKeep];

Or

[array release];

array = [itemsToKeep retain];

 

方法3:

NSMutableArray *discardedItems = [NSMutableArray array];

SomeObjectClass *item;

for (item in originalArrayOfItems) {

    if ([item shouldBeDiscarded])

        [discardedItems addObject:item];

}

[originalArrayOfItems removeObjectsInArray:discardedItems];

抱歉!评论已关闭.