我正在尝试确定自定义类型的数组是否在2D数组中包含该自定义类型,但是却遇到此错误:Cannot convert value of type 'Modifier' to expected argument type '(Modifier) throws -> Bool'
不知道这段代码出了什么问题:
for x in 0..<tableDataSource.count {
for i in 0..<tableDataSource[x].count {
if(existingModifiers.contains(where: tableDataSource[x][i].mod)){
tableDataSource[x][i].selected = true
}
}
}
existModifiers是Modifier
类型的数组和tableDataSource是
tableElement
类型的2D数组其中
tableElement
包含Modifier
属性 最佳答案
更换:
if(existingModifiers.contains(where: tableDataSource[x][i].mod))
与:if(existingModifiers.contains(where: { $0 == tableDataSource[x][i].mod }))
注意
在Swift中,您可以省略
if
语句中的括号以提高清晰度:if existingModifiers.contains(where: { $0 == tableDataSource[x][i].mod })