जवाबों:
एक मानक तरीका इस तरह दिखेगा
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)
वह एकदम सही होगा।