我在 Swift 中设置了一个查询,它从特定列中检索一些值。我试图返回符合查询的对象数量,然后总结客户评级列的评级数字,稍后将它们除以订单数量,以获得平均值。我在 StackOverflow 上发现,我可以通过将不同的评级值存储在一个数组中来实现这一点,但由于某种原因,数组中只存储了一个值,所以我不断收到错误消息。这是代码:
var ordersArray: [Int]!
let query = PFQuery(className: "Orders")
query.whereKey("customer", equalTo: customerLet)
query.findObjectsInBackgroundWithBlock({(objects, error) -> Void in
if objects!.count == 0{
self.ratingLabel.text = ("5.0")
}else{
if let objects = objects{
for object in objects{
let ordersAmount = objects!.count
self.ordersArray.append((Int(object.objectForKey("rating") as! String))!
let totalOrders = self.ordersArray.reduce(0, combine: +)
let ratingAverage = (totalOrders / ordersAmount)
}
}
}
})
最佳答案
还有一个问题是您的阵列未正确初始化。应该是这样的:
var ordersArray: [Int] = []()
试试这个。
for object in objects{
self.ordersArray.append((Int(object.objectForKey("rating") as! String))!
}
let ordersAmount = objects!.count
let totalOrders = self.ordersArray.reduce(0, combine: +)
let ratingAverage = (totalOrders / ordersAmount)
关于ios - 如何使用 Swift 对 Parse 中的列值求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43963135/