Salut, je vais avoir un NSdictionary dans lequel je vais ajouter un tableau avec des "pays" clés. Maintenant, je prends la valeur de ce dictionnaire dans un tableau et je trie le tableau par ordre alphabétique. Maintenant, je veux ajouter ce tableau dans mon dictionnaire (c'est-à-dire que je veux mettre à jour mon dictionnaire avec un nouveau tableau trié et supprimer l'ancien tableau de celui-ci). ....... comment faire cela
Mon code est le suivant
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);
Ici, je veux supprimer les countriesToLiveInArray et les remplacer par triés avec la même valeur de clé, c’est-à-dire pays Merci d’avance ..
Tout d'abord, vous devez utiliser une variable NSMutableDictionary
et mettre ce code:
[countriesToLiveInDict removeObjectForKey:@"Countries"];
[countriesToLiveInDict setObject:sortedArray forKey:@"Countries"];
Commencez par créer votre NSDictionary dans NSMutableDictionary puis écrivez la ligne de code suivante.
[countriesToLiveInDict removeObjectForKey:@"Countries"];
Cela résoudra définitivement votre problème.
NSDictionary
ne peut rien enlever, veuillez utiliser NSMutableDictionary
, comme ceci:
NSMutableDictionary *countriesToLiveInDict = [NSMutableDictionary dictionaryWithObject:countriesToLiveInArray forKey:@"Countries"];
pour Swift 3 comme @MathieuF y a répondu Vous devez d’abord utiliser un NSMutableDictionary et mettre ce code:
countriesToLiveInDict.removeObject(forKey: "Countries")
je poste ma réponse car j'étais à la recherche de la même question et je m'inspire de @MathieuF