json进来,是一个字典数组:
let dict = try JSONSerialization.dictionary(data: data, options: .allowFragments)
(key: contact_383348580, value: {
email = "r@c.com";
"first_name" = Jon;
"last_name" = B;
tags = "";
})
(key: contact_445575065, value: {
email = "n.w@s.com";
"first_name" = "<null>";
"last_name" = "<null>";
tags = "";
})
尝试将其映射到 User 类(然后按名字对 alpha 进行排序(?)),然后填充表格 View 。
我都是 obj-c,但尝试通过 swift 在我的 objc 项目中添加此功能,以逐步提高我的技能。但是谷歌搜索返回了所有不同的方式和不同的快速版本,这些版本似乎不起作用(或者坦率地说对我来说无论如何都是有意义的,但我会到达那里)。
目前我可以创建用户,但名称为空。
for objects in dict {
print(objects)
let first = dict["first_name"] as? String
let last = dict["last_name"] as? String
let name = "\(first ?? "asas") \(last ?? "sdasd")"
let object = User(username: name)
contacts.append(object!)
}
print(" contacts \(contacts)")
最佳答案
你说你有一个字典数组,如果这是正确的,那么你就用变量的命名欺骗了自己,因为 dict
是一个数组,而 objects
是一个字典。我假设你的代码无法编译?
这个怎么样
let array = try JSONSerialization.dictionary(data: data, options: .allowFragments)
for dict in array {
let first = dict["first_name"] as? String ?? "asas"
let last = dict["last_name"] as? String ?? "sdasd"
let name = "\(first) \(last)"
let object = User(username: name)
contacts.append(object)
}
关于swift - 跳转到 swift - json 字典数组的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55066862/