iphone - elementos - Cómo insertar una nueva clave con valor en el diccionario.
agregar elementos a un diccionario python (4)
Quiero insertar una clave con un valor correspondiente en un diccionario existente ...
Puedo establecer valores para las claves existentes en el diccionario, pero no puedo agregar un nuevo valor de clave ...
Cualquier ayuda sería apreciada.
Hola. Estoy obteniendo el contenido de json en el formato de diccionario y de ahí estoy agregando el contenido a otro diccionario.
//here contract is my json dictionary
NSArray *projectDBList =[contract allKeys];//listing all the keys in dict
NSMutableDictionary *projectsList=[[NSMutableDictionary alloc]init];
[projectDBList enumerateObjectsUsingBlock:^(NSString * obj, NSUInteger idx, BOOL *stop) {
[projectsList setObject:[contract objectForKey:obj] forKey:obj];
}];
NSDictionnary es inmutable. Utilice NSMuteableDictiory en su lugar.
adding objetos: setObject:forKey:
editar
Probar si la clave está presente:
[[aDict allKeys] containsObject:@"key"];
Use NSMutableDictionary
NSMutableDictionary *yourMutableDictionary = [NSMutableDictionary alloc] init];
[yourMutableDictionary setObject:@"Value" forKey:@"your key"];
Actualización para Swift:
La siguiente es la réplica swift exacta para el código mencionado anteriormente
var yourMutableDictionary = NSMutableDictionary()
yourMutableDictionary.setObject("Value", forKey: "Key")
Pero te sugiero que vayas con Swift Dictionary.
var yourMutableDictionary = [String: AnyObject]() //Open close bracket represents initialization
//The reason for AnyObject is a dictionary''s value can be String or
//Array or Dictionary so it is generically written as AnyObject
yourMutableDictionary["Key"] = "Value"
NSMutableDictionary *dict = [[NSMutableDictionary alloc]init];
Al usar este método podemos agregar el nuevo valor a NSMutableDictionary
[dict setObject:@"Value" forKey:@"Key"];
Para saber si existe la clave en el diccionario.
[[dict allKeys] containsObject:@"key"];