/ / NSDictionary में मान पुनर्प्राप्त करें - उद्देश्य-सी

NSDictionary में उद्देश्य पुनर्प्राप्त करें - उद्देश्य-सी

मैं NSDictionary में निहित मानों को पुनर्प्राप्त करना चाहता हूं। मैं यह करता हूँ :

MyCommon *pCommon = [MyCommon Singleton];
NSArray *result = pCommon.res; //res is define and retain in common.m. This is the array.
NSDictionary *dataItem = [result objectAtIndex:????];

मैं नहीं जानता कि मैं क्या बदल सकता हूं ????

धन्यवाद

उत्तर:

जवाब के लिए 2 № 1

कुछ अन्य भाषाओं के विपरीत, उद्देश्य-सी Arrays और शब्दकोशों के बीच एक अंतर बनाता है।

एक सरणी एक संग्रह है, जो संख्या से अनुक्रमित है। एक शब्दकोश वस्तुओं द्वारा अनुक्रमित संग्रह होता है (आमतौर पर तार, लेकिन अन्य प्रकार भी हो सकते हैं)।

इसके शीर्ष पर, उद्देश्य-सी परिवर्तनीय और अपरिवर्तनीय सरणी और शब्दकोशों के बीच एक अंतर बनाता है। NSArray तथा NSDictionary बनाए जाने के बाद संशोधित नहीं किया जा सकता है। यदि आपको अपने संग्रह में ऑब्जेक्ट्स जोड़ने की ज़रूरत है, तो इसका उपयोग करें NSMutableArray तथा NSMutableDictionary बजाय।

NSArray * myArray = [[NSArray alloc] initWithObjects: @"text1", @"text2", @"text3", nil];
// you can then access a member by using:
NSString * text = [myArray objectAtIndex: 0];

NSMutableDictionary * myDict = [[NSMutableDictionary alloc] init];
// add an object
[myDict setObject:@"text1" forKey:@"key1"];
[myDict setObject:@"text2" forKey:@"key2"];
// you can retrieve objects using:
text = [myDict objectForKey: @"key1"];

[myArray release];
[myDict release];

जवाब के लिए 0 № 2

कुंआ, result है एक NSArray, एक नहीं NSDictionary, तो बस उस तत्व के सूचकांक को रखें जिसमें आप रुचि रखते हैं। Arrays को शून्य से पूर्णांक द्वारा अनुक्रमित किया जाता है।

अगर आपके मामले में result है एक NSDictionary और नहीं NSArray, उपयोग objectForKey: के बजाय विधि objectAtIndex:.