私は2つのNSArrayオブジェクトを持っています。インデックスiの配列1のintが配列2のintにインデックスiで追加され、結果が新しい配列に追加されるように、2つの配列をコンポーネントごとに追加したいとします。 for(int i = 0; i < [array1 count]; i ++)型のメソッドのためのより高速な方法がありますか?たとえば、C列、高速列挙、ブロックを使用できますか?私は、多数のオブジェクトを含むx個の配列を追加したいので特に興味があります。現在のコードは次のとおりです。コンポーネントごとに2つのNSArrayを算術演算しますか?
NSArray *array1 = [NSArray arrayWithObjects:
[NSNumber numberWithInt:1],
[NSNumber numberWithInt:2],
[NSNumber numberWithInt:3],
[NSNumber numberWithInt:4],
nil];
NSArray *array2 = [NSArray arrayWithObjects:
[NSNumber numberWithInt:10],
[NSNumber numberWithInt:20],
[NSNumber numberWithInt:30],
[NSNumber numberWithInt:40],
nil];
NSMutableArray *resultArray = [[NSMutableArray alloc] initWithCapacity:[array1 count]];
for (int i=0; i<[array1 count]; i++) {
int result = [[array1 objectAtIndex:i] intValue] + [[array2 objectAtIndex:i] intValue];
[resultArray addObject:[NSNumber numberWithInt:result]];
}
ありがとう、私はコメントありがとうございます。
x個の配列が合計で配列の配列から言えばxの配列がユーザー入力に基づいて変更できる場合は、これをどうやって行うのかについてもっと考えていました。何かご意見は? –
同じ基本的なアプローチが有効です。列挙ブロックの内部では、array1の値とarray2の対応する値を単に加算するのではなく、最上位の親配列のすべての配列をループし、各配列の現在のインデックスの値を取得してから、それらをアップして結果配列に入れます。このコードを参照する必要がある場合は、私に教えてください。 –
このコードを提供しても大丈夫なら、本当に感謝します。私はプログラムの仕方を学んでいるだけで、すべては私には新しいものです。 –