配列の最初から最後まで順番に進むことを期待できますか?これに関するドキュメントには何も見つかりません。
すなわちです
for (id val in array)
{
NSLog(@"%@", val);
}
常に同じように印刷します
for (int i = 0; i < [array count]; ++i)
{
NSLog(@"%@", [array objectAtIndex:i]);
}
配列の最初から最後まで順番に進むことを期待できますか?これに関するドキュメントには何も見つかりません。
すなわちです
for (id val in array)
{
NSLog(@"%@", val);
}
常に同じように印刷します
for (int i = 0; i < [array count]; ++i)
{
NSLog(@"%@", [array objectAtIndex:i]);
}
高速列挙に関するAppleのObjective-Cドキュメントから:
NSArrayや配列から派生したNSEnumeratorインスタンスなど、明確に定義された順序を持つコレクションまたは列挙子の場合、列挙はその順序で進行するため、反復をカウントするだけで、必要に応じてコレクションへの適切なインデックスが得られます。
もう一度、投稿直後に答えを見つけました。私の古いリファレンスでは、反復の順序については言及されていませんでしたが、オンラインのリファレンスでは言及されていました。配列は実際に順番に繰り返されます。