NSDictionary dic;
NSMutableArray array;
//Objective-C Code.
array = [dic valueForKey:@"Table"]; //"Table" is key in dictionary
Run Code Online (Sandbox Code Playgroud)
如何在Swift中编写相同的代码?
valueForKey:Swift中没有更多内容,但是有一种方法可以map用来实现类似的(如果不是相同的话)结果.
如果集合中的对象是字典:
let array = dic.map { $0["table"] as? String }
Run Code Online (Sandbox Code Playgroud)
如果集合中的对象是对象:
let array = dic.map{ $0.table }
Run Code Online (Sandbox Code Playgroud)
如果你正在使用像NSDictionary你的例子中的Objective-C集合类型,那么就像其他人所说的那样,你仍然可以继续使用valueForKey:.
let array = dic.valueForKey("table")
Run Code Online (Sandbox Code Playgroud)
您将更好地了解如何在 Swift 中处理字典
let employees = json["employees"]! as [[String : AnyObject]]
Run Code Online (Sandbox Code Playgroud)
下一步是循环员工数组并打印名字和姓氏。
请记住,我们正在循环字典数组。这意味着为了从firstName和lastName获取字符串值,我们需要首先解开可选值:
for employee in employees {
let firstName = employee["firstName"]! as String
let lastName = employee["lastName"]! as String
println("employee: \(firstName) \(lastName)")
}
Run Code Online (Sandbox Code Playgroud)
构建、运行,您应该看到:
employee: John Doe
employee: Anna Smith
employee: Peter Jones
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14134 次 |
| 最近记录: |