Insert a value for key into NSMutableArray
arrays, dictionary, objective-c
Solution
You are looking for `NSMutableDictionary`, not `NSMutableArray`. Dictionaries store objects based on a key, whereas arrays store objects based on an index.
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
[dict setObject:something forKey:@"Some Key"];
// ... and later ...
id something = [dict objectForKey:@"Some Key"];
Problem
I think this could be a very easy question for you. But I have searched a lot and I don't know if I am very fool or I am using the wrong class (`NSMutableArray`). I want to add an object for a specific key so that I can retrieve it later. For example: ``` NSMutableArray *grisOcurrencias = [[NSMutableArray alloc] init]; [grisOcurrencias setValue:ocurrencia forKey:[NSString stringWithFormat: @"%f", pixelVal]]; ``` But the array is not getting inserted in the array, if I do something like: ``` [grisOcurrencias addObject: ocurrencia] ``` The object is inserted. Am I doing something wrong? Other thing... I want to recover the object by its key, what method should I use? Thanks a lot