how to remove object from NSDictionary

74,945

Solution 1

First you need to use a NSMutableDictionary and put this code :

[countriesToLiveInDict removeObjectForKey:@"Countries"];
[countriesToLiveInDict setObject:sortedArray forKey:@"Countries"];

Solution 2

First of all make your NSDictionary to NSMutableDictionary & then write the following line of code

[countriesToLiveInDict removeObjectForKey:@"Countries"];

This will definitely resolve your issue.

Solution 3

NSDictionary cannot remove anything, please use NSMutableDictionary, like this:

NSMutableDictionary *countriesToLiveInDict = [NSMutableDictionary dictionaryWithObject:countriesToLiveInArray forKey:@"Countries"];
Share:
74,945
V.V
Author by

V.V

I am an iPhone/iPad application and Game developer. Also working in c# applications and Web development.

Updated on February 23, 2020

Comments

  • V.V
    V.V about 4 years

    Hi i am having a NSdictionary in which i am adding a array with key "countries ". Now i take the value of this dictionary into array and sort the array in alpahbatical order .Now i want to add this array into my Dictionary (that is i want to update my dictionary with new sorted array and remove the old array from it )........ how to do this

    My code is as follows

    NSArray *countriesToLiveInArray = [NSArray arrayWithObjects:@"Iceland", @"Greenland", @"Switzerland", @"Norway", @"New Zealand", @"Greece", @"Italy", @"Ireland", nil];
    NSDictionary *countriesToLiveInDict = [NSDictionary dictionaryWithObject:countriesToLiveInArray forKey:@"Countries"];
    
    
    NSArray *tmpary = [countriesToLiveInDict valueForKey:@"Countries"];
    NSLog(@"ary value is  %@",ary);
    NSArray *sortedArray = [tmpary sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)];
    NSLog(@"sortedArray is %@",sortedArray);
    

    Here i want to remove the countriesToLiveInArray and replace it with sortedArray with same key value i.e. Countries Thanks in advance..