我正在研究如何从类对象列表构造或创建一个子对象。
我有一个类别类,看起来像:
class Category {
var Code: Int?
var Label: String?
init(Code: Int, Label: String) {
self.Code = Code
self.Label = Int
}
}
然后我有一个类别列表var categories = [Category]()
然后我按照这样添加我的列表:
categories.append(5,"Shoes")
如何构造一个如下所示的json对象:
{
"List":[
{
"Code":"5",
"Label":"Shoes"
},
....
]
}
答案 0 :(得分:1)
首先,我们更新您的Category
课程。
class Category {
var code: Int // this is no longer optional
var label: String // this neither
init(code: Int, label: String) {
self.code = code
self.label = label
}
var asDictionary : [String:AnyObject] {
return ["Code": code, "Label": label]
}
}
现在我们创建一个类别列表
var categories = [
Category(code: 0, label: "zero"),
Category(code: 1, label: "one"),
Category(code: 2, label: "two")
]
然后我们将它们转换为字典列表
let list = categories.map { $0.asDictionary }
最后让我们创建json
let json = ["List":list]
看起来有效
NSJSONSerialization.isValidJSONObject(json) // true
希望这有帮助。