我有一个由JSON文件填充的字典对象数组,定义为:
For Each otable In CurrentDb.TableDefs
If otable.Name Like "*ImportErrors*" Then
CurrentDb.TableDefs.Delete otable.Name
End If
Next otable
var peopleArray = [Person]()
定义为:
Person
填充数组后,我很难使用class Person {
var name: String?
var gender: String?
var html_url: String?
init(json: NSDictionary) { // Dictionary object
self.name = json["name"] as? String
self.gender = json["gender"] as? String
self.html_url = json["html_url"] as? String // Location of the JSON file
}
}
函数来确定是否有某人具有特定的contains
。
我发出了以下错误:name
我尝试过的以下行:
Cannot convert value of type 'String!' to expected argument type '@noescape (Person) throws -> Bool'
答案 0 :(得分:4)
您应该使用闭包作为contains
调用的输入参数:
peopleArray.contains { person -> Bool in
person.name == "Bob"
}
或使用短样式语法:
peopleArray.contains { $0.name == "Bob" }
或者,如果您想要查找特定的人,则可以Person
符合Equatable
:https://stackoverflow.com/a/32953118/2227743