私はNSMutableArray
のコンテンツを持っています。置き換えたいのはNSNull
のオブジェクトです。複数の配列の内容を1つのオブジェクトに置き換える?
これは私が何をすべきかです:
NSMutableArray* nulls = [NSMutableArray array];
for (NSInteger i = 0; i < myIndexes.count; i++)
[nulls addObject:[NSNull null]];
[stageMap replaceObjectsAtIndexes:myIndexes withObjects:nulls];
私はより効率的にこれを行うことができますどのように? NSIndexSetを列挙する方法があるので、配列の内容を1つずつ置き換えることはできますか?
が解決
提案された方法は、(0.001210s対平均0.000565s)2倍に高速であることが判明:
if (myIndex.count > 0)
{
NSInteger index = [myIndex firstIndex];
for (NSInteger i = 0; i < myIndex.count; i++)
{
[stageMap replaceObjectAtIndex:index withObject:[NSNull null]];
index = [myIndex indexGreaterThanIndex:index];
}
}
これは非効率的ですか?つまり、アプリケーションのプロファイルを作成するときに、このコードの断片が大きく減速していますか? –