2011-09-19 50 views
1

在NSArray中,我有10個值。該值是這個樣子:在NSArray中刪除NSString的問題

Hello 
Hello2 
My 
My2 
Name 
Name2 
Is 
Is2 
XcodeDev 
XcodeDev2 

我想刪除從NSArray中每一秒的NSString,所以我留下了類似下面的數組。這些值是隨機的,並且每秒都不會有2個!我怎樣才能做到這一點?

Hello 
My 
Name 
Is 
XcodeDev 

回答

5

首先,你將需要的NSMutableArray一個實例,因爲NSArray s爲不可變的,因此,你不能改變它的內容。

NSMutableArray *ary = [NSMutableArray arrayWithArray:anImmutableArray]; 

然後,您可以創建一個包含所有奇數索引的索引集:

NSMutableIndexSet *indexSet = [[NSMutableIndexSet alloc] init]; 
for (int i = 1; i < [ary count]; i=i+2) { 
    [indexSet addIndex:i]; 
} 

最後,只需調用數組removeObjectsAtIndexes:方法。

[ary removeObjectsAtIndexes:indexSet];