जवाबों:
एक मानक तरीका इस तरह दिखेगा
for(id key in myDict) {
id value = [myDict objectForKey:key];
[value doStuff];
}
id key in myDict.allKeysशब्दकोश के बजाय (यानी ) कुंजी के माध्यम से पुनरावृति करने के लिए बेहतर है । यह आपको शब्दकोश को म्यूट करने की अनुमति देता है, जो कि आप क्या करना चाहते हैं।
आप उपयोग कर सकते हैं
[myDict enumerateKeysAndObjectsUsingBlock: ^(id key, id obj, BOOL *stop) {
// do something with key and obj
}];
यदि आपका लक्ष्य OS ब्लॉक का समर्थन करता है।
आप अपने मूल्यों [dict allValues]को प्राप्त करने के लिए उपयोग कर सकते हैं NSArray। ध्यान रखें कि यह कॉल के बीच किसी भी आदेश की गारंटी नहीं देता है।
तेजी से गणना में
for(id key in myDictionary) {
id value = [myDictionary objectForKey:key];
// do something with key and obj
}
ब्लॉक में:
[myDictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
// do something with key and obj
}];
for (id key, value in myDict)वह एकदम सही होगा।