我正在构建一个能够处理才艺表演投票的应用程序。我想运行针对Parse数据库运行的查询,并返回“Total”。这就是我所拥有的:
var query = PFQuery(className:"points")
query.whereKey("Act", equalTo:"Act 1")
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]!, error: NSError!) -> Void in
if error == nil
{
// The find succeeded.
var test = objects["Total"]
println(test)
// Do something with the found objects
} else {
// Log details of the failure
println("nope")
}
}
然而,当我运行它时,控制台会打印“Optional 3”。有什么建议吗?
答案 0 :(得分:1)
查询字典总是返回一个可选字典,以处理密钥不存在时的情况。
您可以执行强制解包操作符!
:
var test = objects["Total"]!
但如果找不到密钥,则会生成运行时异常。更好的方法是使用可选绑定:
if let test = objects["Total"] {
println(test)
}
区别在于它更安全,if
分支仅在objects["Total"]
不为零时执行