我有一个所有类的对象数组PFObject
。我有一个PFObject
名为的子类,GameCategory
其中PFObject
数组中的某些s是GameCategory
。
我想知道如何编写一个first / where语句,该语句将检查每个对象以查看其是否为GameCategory类,然后检查匹配的ID。
这是我不可行的尝试:
for id in Ids {
if let object = self.matchObjects.first(where: {
if let gameCategory = $0 as? GameCategory {
gameCategory.id == id
}
}) {
//object successfully cast as GameCategory, and the GameCategory id was a match
}
}
这段代码返回错误“ Missing return in aclosure to return'Bool”。
您的代码缺少该first(where:
闭包和强制类型转换的返回GameCategory
(您的强制类型仅存在于该闭锁范围内)。我写的有点不同,但是可以达到相同的效果:
for id in Ids {
if let object = self.matchObjects.first(where: { ($0 as? GameCategory)?.id == id }) as? GameCategory {
//object successfully cast as GameCategory, and the GameCategory id was a match
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句