我正在尝试实现下面的if块:
if loggedInUser.following.contains(userToView) {
}
其中loggedInUser.following
是自定义User
类的数组,userToView是User
类的单个实例。
class User {
....
}
然而,loggedInUser.following.contains(userToView)
引发了以下错误:
无法将'User'类型的值转换为预期的参数类型'(User)throws - >布尔'
我的印象是我需要实现某种功能,以确定两个用户是否相等,但我不知道如何实现这样的功能。任何帮助将非常感激;提前谢谢你!
答案 0 :(得分:1)
哟可以使用下面的代码
if (loggedInUser.following as NSArray).contains(userToView) {
}
答案 1 :(得分:1)
谢谢大家的建议。
创建以下功能并实施“Equatable”协议后,一切都按预期工作:
class User: Equatable {
//...
var id = Int() //Unique Identifier
//...
}
func ==(lhs: User, rhs: User) -> Bool {
return lhs.id == rhs.id
}
在实施上述代码后,我可以毫无问题地调用以下内容:
if loggedInUser.following.contains(userToView) {
...
}