Я большой словарь в моем приложении выглядит следующим образом:Каким образом можно фильтровать словарь [[String: String]]
var data = [["type":"Sport", "model":"R6"],["type":"Enduro", "model":"Tenerre"],["type":"Chopper", "model":"Intruder"]]
, который я хотел бы отсортировать в UISearchController
использования этой функции func updateSearchResultsForSearchController(searchController: UISearchController)
внутри этой функции до Я хотел бы, чтобы отфильтровать мой массив по «типу» не используется for
но filter(includeElement: (Self.Generator.Element) throws -> Bool)
но я Получать сообщение об ошибке Cannot convert value of type String -> Bool to expected argument type ([String:String]) -> Bool
Я делаю что-то вроде этого:
self.data.filter({ (type: String) -> Bool in
return true
})
как я должен делать это правильно?
Вы можете упростить так: 'self.data.filter {$ 0 [" type "] ==" yourFilter "}' – ebluehands
Абсолютно верно! В моем коде я использовал «расширенную версию», чтобы уточнить, что парам закрытия является «[String: String]». Но спасибо, что указали! –
@ebluehands не могли бы вы объяснить мне, что это значит '{$ 0 [" type "] ==" yourFilter "}' особенно "$ 0" – PiterPan