2010-05-06 14 views
33

क्या मैं उम्मीद कर सकता हूं कि यह एक सरणी की शुरुआत से अंत तक शुरू हो जाए? इस बारे में दस्तावेज़ों में कुछ भी नहीं मिला।क्या उद्देश्य-सी में तेजी से गणना पुनरावृत्ति के आदेश की गारंटी देती है?

अर्थात

for (id val in array) 
{ 
    NSLog(@"%@", val); 
} 

हमेशा की तरह

for (int i = 0; i < [array count]; ++i) 
{ 
    NSLog(@"%@", [array objectAtIndex:i]); 
} 

उत्तर

58
' Objective-C documentation सेब तेजी से गणन से

:

संग्रह या प्रगणक के लिए है कि एक अच्छी तरह से परिभाषित क्रम-तरह के NSArray या NSEnumerator उदाहरण इसी क्रम में एक सरणी-गणन आय से व्युत्पन्न के रूप में है, तो बस पुनरावृत्ति की गणना करने पर आपको संग्रह में उचित अनुक्रमणिका मिल जाएगी यदि आपको इसकी आवश्यकता है।

+6

सिद्धांत यह है कि अपरिभाषित आदेश (यानी 'एनएसएसएटी' और 'एनएस डिक्शनरी') के साथ संग्रह एक अनिर्धारित पुनरावृत्ति आदेश है। –

0

बाहर ही मुद्रित करने के लिए सही पोस्टिंग के बाद एक बार फिर मैं इस सवाल का जवाब मिल गया है जा रहा है। मेरे पुराने संदर्भ में पुनरावृत्ति के क्रम का उल्लेख नहीं किया गया, लेकिन ऑनलाइन एक ने किया। सरणी वास्तव में क्रम में पुनरावृत्त है।

संबंधित मुद्दे