objective how dictionaries create ios json swift nsdictionary key-value

ios - how - swift: Agregue mĂșltiples objetos<clave, valor> a NSDictionary



nsdictionary swift (3)

Estoy tratando de agregar varios objetos a NSDictionary, como

var myDict: NSDictionary = [["fname": "abc", "lname": "def"], ["fname": "ghi", "lname": "jkl"], ...]

¿Es incluso posible hacer esto? Si no, por favor sugiera una mejor manera. Realmente necesito convertir este NSDictionary a la cadena JSON y enviarlo al servidor, por lo que necesito múltiples objetos en NSDictionary.


Definitivamente puedes hacer un diccionario de diccionarios. Sin embargo, necesitas una sintaxis diferente para eso:

var myDictOfDict:NSDictionary = [ "a" : ["fname": "abc", "lname": "def"] , "b" : ["fname": "ghi", "lname": "jkl"] , ... : ... ]

Sin embargo, lo que tienes parece una variedad de diccionarios:

var myArrayOfDict: NSArray = [ ["fname": "abc", "lname": "def"] , ["fname": "ghi", "lname": "jkl"] , ... ]

Para obtener JSON que se ve así

{"Data": [{"User": myDict1}, {"User": myDict1},...]}

necesitas agregar la matriz anterior a un diccionario, como esto:

var myDict:NSDictionary = ["Data" : myArrayOfDict]


SWIFT 3.0

  • Elemento de lista

Después de todo, puedes crear NSArray y luego puedes establecer Array en NSMutableDictionary usando setvalue(forKey:) método predeterminado.

var arrFname : NSArray! arrFname = ["abc","xyz","mno"] var arrLname : NSArray! arrFname = ["tuv","xuv","swift"] var dicSet : NSMutableDictionary! dicSet.setObject(arrFname, forKey : "Fname") dicSet.setObject(arrLname, forKey : "Lname") print(dicSet)


var tempDict = NSMutableDictionary() tempDict.setValue("sam", forKey : "one") print(tempDict["one"] ?? "1")