整数オブジェクトをループして整数変数に追加する場合、forループが完了したら合計を出力します。これを行う簡単な方法はありますか?今は、オブジェクトを取得して個別に印刷することができますが、合計は毎回0として印刷されます。 下記のコードをご覧ください。これはSwift with Parseでバックエンドとして書かれたアプリ向けです。 何かが助けてくれて、ありがとう!forループに整数を追加して合計を印刷する
var itemsArray = [Int]()
let followingUserItemsQuery = PFUser.query()
followingUserItemsQuery?.whereKey("objectId", equalTo: (PFUser.currentUser()?.objectId!)!)
followingUserItemsQuery?.findObjectsInBackgroundWithBlock({ (objects: [PFObject]?, error) in
if let objects = objects {
for object in objects {
let followingUsersArray = (object["following"] as! [String])
// Get number of listed items of following users with PFUser query for their total objects
for followingUser in followingUsersArray {
print(followingUser)
let query = PFUser.query()
query?.whereKey("objectId", equalTo: followingUser)
//Get each user's listedItems count then append to a higher-level integer variable
query?.getFirstObjectInBackgroundWithBlock({ (object, error) in
itemsArray.append(object!["listedItems"] as! Int)
})
}
}
}
let itemsSum = itemsArray.reduce(0, combine: +)
print(itemsSum)
self.followingUsersAddedItems.text = String("Your followers listed "+String(itemsSum)+" items")
'let itemsSum = ...'を 'findObjectsInBackgroundWithBlock'に移動して、同期と非同期の機能について学んでください –