У меня есть этот var json : [[String : Any]] = [[:]]
, который содержит ответ JSON следующим образом:
{
"id": "1",
"name": "Apple",
"category_name": "Fruits"
},
{
"id": "2",
"name": "Black shirt",
"category_name": "Fashion"
},
{
"id": "3",
"name": "iPad",
"category_name": "Gadgets"
}
И я написал перечисление:
enum : Int {
case fruits = 0, fashion, gadgets
}
var data = [Categories: [[String: Any]]]()
Затем у меня есть этот метод для сортировки категорий:
func sortData() {
data[.fruits] = self.json.filter({ $0["category_name"] == "Fruits" })
data[.fashion] = self.json.filter({ $0["category_name"] == "Fashion" })
data[.gadgets] = self.json.filter({ $0["category_name"] == "Gadgets" })
}
После этого я получаю такую ошибку
Бинарный оператор «
==
» не может применяться к операндам типа «Any?
» и «String
».
Подскажите, пожалуйста, как решить эту?
String
, вы можете изменитьdata
на использование[String: String]
и избавить себя от выполнения этого приведения. - person paulvs   schedule 06.11.2017