2011-11-18 6 views
6

Dość proste pytanie: czy kolejność wyliczania w pętli for gwarantuje zachowanie kolejności obiektu docelowego NSArray (tj. Początek przy indeksie obiektu 0 i przyrost o 1 za każdym razem)?Czy zagwarantowana jest kolejność wyliczania NSArray for-loop?

W szczególności, czy kolejność wyliczania w poniższym fragmencie kodu gwarantuje rozpoczęcie od indeksu tablicy 0 i przyrost o 1 w każdej pętli? (codesArray jest NSArray)

for (NSNumber *num in codesArray) { 
    // do stuff // 
} 

Lub jeśli chcę, aby zagwarantować porządek wyliczenia muszę zrobić tradycyjną for pętlę stylu:

for (int i=0; i<[codesArray count]; i++) { 
    // do stuff // 
} 

Dzięki!

Odpowiedz

6

Tak, będą one zgodne z gwarantowanym zamówieniem, jak można się spodziewać.

+0

Doskonale, dzięki. – Murdock

+2

Odpowiedź tutaj (na to samo pytanie) zawiera ten sam wniosek, z linkiem do dokumentacji firmy Apple: http://stackoverflow.com/a/2777629/189687 – Max