0
私は辞書の配列を持っているような状況があります。各キーには特定のオブジェクトの配列があります。このような。ディクショナリの配列内の配列にフィルタを適用する方法は?
// example setup
struct FruitsData {
var name: String?
var id: String?
}
tableViewSource = [String : [FruitsData]]
ですから、この内側の配列にフィルタを適用する必要があります。最終的な配列の値を更新することができません。 私はこのコードを書いています。
tableViewSource = tableViewSource.filter { (dictData: (key: String, value: [FruitsData])) -> Bool in
var arrFruitsData = dictData.value
arrFruitsData = arrFruitsData.filter{ ($0.id != nil) }
if arrFruitsData.count == 0 {
self.tableViewHeaders = self.tableViewHeaders.filter { $0 != dictData.key }
}
return true
}
私はidが削除された配列内の値を削除しています。
たとえば、配列にこれらの値がある場合。全てtableViewSource
の
var array = ["A": [FruitsData(name: "apple", id: "5"), FruitsData(name: "apricot",id: "")], "M": [FruitsData(name: "mango", id: "9"), FruitsData(name: "grapes", id: "")]]
ありがとうございました。私の問題を解決しました。これは辞書の配列ではありませんか? – user1960279
@ user1960279ようこそメイト:)はい辞書の配列ではありませんそれは配列としてすべての値を持つ辞書です –